https://school.programmers.co.kr/learn/courses/30/lessons/1209564가지 단어만 발음할 수 있기 때문에, 해당 단어를 모두 공백으로 바꿔주었다.그리고 마지막에 공백을 모두 제거해주었을 때문자열의 길이가 0이면
https://school.programmers.co.kr/learn/courses/30/lessons/120924
https://school.programmers.co.kr/learn/courses/30/lessons/120923주어진 total을 num으로 나누면 중간에 위치할 수가 나온다.이 숫자의 앞과 뒤를 채워 num만큼의 길이로 만들어주면 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/120875
https://school.programmers.co.kr/learn/courses/30/lessons/120876
https://school.programmers.co.kr/learn/courses/30/lessons/120866
https://school.programmers.co.kr/learn/courses/30/lessons/150370모든 달이 28일이며, 날짜는 항상 2000-01-01부터인 조건을 활용한다.today, 시작일 모두 2000-01-01부터 며칠이 지났는지 계산
https://school.programmers.co.kr/learn/courses/30/lessons/92334set()을 활용하여 중복 신고를 제거한 후 진행하면 쉽다.
https://school.programmers.co.kr/learn/courses/30/lessons/133502시간을 줄이기 위해 최소한의 for loop을 하면서, pop()을 사용한다.
https://school.programmers.co.kr/learn/courses/30/lessons/118666각 성격을 0으로 초기화한 dictionary를 만들어서 진행한다.
https://school.programmers.co.kr/learn/courses/30/lessons/140108x, x가 아닌 것의 수를 비교하여 같아질 때마다, 카운트를 초기화
https://school.programmers.co.kr/learn/courses/30/lessons/12950numpy를 활용하면 빠르고 쉽다.
https://school.programmers.co.kr/learn/courses/30/lessons/42576Counter끼리 연산을 하면 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/1845set으로 중복 제거
스택/큐 문제는 빈 리스트(스택/큐)에 채워나가면서 비교하는게 속도를 줄이는 팁이다.
https://school.programmers.co.kr/learn/courses/30/lessons/42748
https://school.programmers.co.kr/learn/courses/30/lessons/12939문자열을 split(), map()으로 각각 숫자로 분리해준다.그 뒤에 min, max를 구하면 된다.
https://school.programmers.co.kr/learn/courses/30/lessons/12951공백 다음 문자가 대문자임을 이용하여 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/12941A 리스트에서는 최댓값, B리스트에는 최솟값끼리 곱해나가면 된다.최적화를 위해 미리 정렬을 한 뒤에 진행하면 좋다.
https://school.programmers.co.kr/learn/courses/30/lessons/12909닫는 괄호 ')' 가 앞서 나오게 되면 절대 완성될 수 없는 점을 이용한다.변수 check가 음수가 되는 순간 완성될 수 없는 괄호다.
https://school.programmers.co.kr/learn/courses/30/lessons/701290과 1의 갯수를 세는 것은 .count()를 활용한다.
https://school.programmers.co.kr/learn/courses/30/lessons/86971DFS송전탑을 하나씩 끊어보고, 끊어진 송전탑과 연결되지 않도록 if문으로 제어한다.1번 송전탑이 있는 그룹을 먼저 찾아내 visit에 저장하고,v
https://school.programmers.co.kr/learn/courses/30/lessons/42842테두리는 x \* y-yellow = brown,내부는 (x-2) \* (y-2) = yellow 를 만족할 때 성립한다는 점을 이용한다.
. https://school.programmers.co.kr/learn/courses/30/lessons/42577번호들을 사전순으로 정렬하고, 현재 번호가 다음번호에 속하는지 비교한다.이렇게 combination으로 모든 경우의 수를 비교하려 했는데 이 경
https://school.programmers.co.kr/learn/courses/30/lessons/42578옷이 선택되지 않을 경우를 감안하여 각 종류 별로 +1을 한 뒤 진행한다.마지막에 1을 뺀 이유는 모든 옷이 선택되지 않았을 경우를 뜻한다.
https://school.programmers.co.kr/learn/courses/30/lessons/42586?language=python3
https://school.programmers.co.kr/learn/courses/30/lessons/42587
https://school.programmers.co.kr/learn/courses/30/lessons/42583dict, numpy, deque 등 방법은 다양하다.
https://school.programmers.co.kr/learn/courses/30/lessons/42584
L2 : 가장 큰 수 Python https://school.programmers.co.kr/learn/courses/30/lessons/42746 위 문제는 chatgpt를 이용해 풀이를 시켰었다. 파이썬에서 문자열은 ascii를 비교한다. number가 ~10
https://school.programmers.co.kr/learn/courses/30/lessons/42747citations를 오름차순으로 정렬하고 진행한다.
https://school.programmers.co.kr/learn/courses/30/lessons/42626계속 최소값을 찾아 연산해줘야한다. 시간을 줄이기 위해서는 heapq를 활용한다.
https://school.programmers.co.kr/learn/courses/30/lessons/42579딕셔너리를 활용하는 문제
https://school.programmers.co.kr/learn/courses/30/lessons/42627cur_time(현재 시간)이 다음 job의 시작 시간보다 크다면, 대기 중인 job이 모여있는 work에 cur_time보다 작은 모든 job을
https://school.programmers.co.kr/learn/courses/30/lessons/86491각 명함의 가장 작은 길이들 중 최댓값,각 명함의 가장 긴 길이들 중 최댓값이들의 곱이 정답이다.
https://school.programmers.co.kr/learn/courses/30/lessons/42840\#numpy #where
https://school.programmers.co.kr/learn/courses/30/lessons/42839\#math #sqrt #itertools #permutation
https://school.programmers.co.kr/learn/courses/30/lessons/87946permutation으로 모든 경우의 수를 구해서 진행해도 된다.\#DFS #깊이우선탐색
https://school.programmers.co.kr/learn/courses/30/lessons/84512\#중복순열 #product #itertools
DFS
https://school.programmers.co.kr/learn/courses/30/lessons/1844\#BFS #최단거리 #zeros #numpy
https://school.programmers.co.kr/learn/courses/30/lessons/43162\#BFS
https://school.programmers.co.kr/learn/courses/30/lessons/43163\#BFS
https://school.programmers.co.kr/learn/courses/30/lessons/49189BFS에서 visited는 방문 여부만 기록했는데, 여기서는 각 노드를 지나칠 때마다 거리를 기록하는 용도로 활용해야한다.
https://school.programmers.co.kr/learn/courses/30/lessons/42862\#그리디 #greedy
https://school.programmers.co.kr/learn/courses/30/lessons/42883stack에 앞에서부터 쌓으면서,다음 수가 이전 수보다 크면 pop한다.k가 남으면 뒤에서 자른다.
https://school.programmers.co.kr/learn/courses/30/lessons/42885모범 답안 스크랩\#그리디 #greedy
https://school.programmers.co.kr/learn/courses/30/lessons/42861\#Kruskal #크루스칼 #그리디 #Greedy
https://school.programmers.co.kr/learn/courses/30/lessons/42884
https://school.programmers.co.kr/learn/courses/30/lessons/133499del, remove를 활용해봤는데, 수행은 문제 없이 되는데 제거 후 공백이 되는 경우가 되면 제거가 되지 않았다...복잡한 조건식들을 활용하지
https://school.programmers.co.kr/learn/courses/30/lessons/72410이 곳에는 모범답안을 게시한다.나는 조건문들을 활용해도 어렵진 않지만 정규식을 활용하면 더 간결해진다.
https://school.programmers.co.kr/learn/courses/30/lessons/136798\#공약수 #제곱근
https://school.programmers.co.kr/learn/courses/30/lessons/64061
https://school.programmers.co.kr/learn/courses/30/lessons/67256각 숫자별 좌표를 활용해 가까운 위치를 찾아낸다.
https://school.programmers.co.kr/learn/courses/30/lessons/131128sort를 활용하지 않을 것, int(), str() 같은 type변환을 쓰지 않는 것이 중요하다.collections.Counter를 활용해도
https://school.programmers.co.kr/learn/courses/30/lessons/138477
https://school.programmers.co.kr/learn/courses/30/lessons/135808indexing을 하지 않아야 시간을 준수할 수 있다.
https://school.programmers.co.kr/learn/courses/30/lessons/77484로또번호는 중복 선택이 없으므로 set으로 변환해도 변화가 없다.그리고 set은 차집합 연산이 되기 때문에 set을 이용하면 간결해진다.
https://school.programmers.co.kr/learn/courses/30/lessons/142086현재 문자의 바로 직전까지의 문자열을 거꾸로 만든 뒤, find()를 활용한다.find는 문자열에서 주어진 문자가 존재하지 않으면 -1을 리턴한다
https://school.programmers.co.kr/learn/courses/30/lessons/17682조건문 문제
https://school.programmers.co.kr/learn/courses/30/lessons/42889
https://school.programmers.co.kr/learn/courses/30/lessons/1342401인분 순서를 먼저 생성하고, 0(물)을 추가한 뒤, 앞서 만든 1인분에 reversed()를 취해 합친다.
https://school.programmers.co.kr/learn/courses/30/lessons/12977combinations, 공약수를 구할 때는 sqrt(n)까지만 확인하면 됨을 활용하는 문제
L2 : 숫자의 표현 Pythonhttps://school.programmers.co.kr/learn/courses/30/lessons/12924
https://school.programmers.co.kr/learn/courses/30/lessons/12945
https://school.programmers.co.kr/learn/courses/30/lessons/12911
https://school.programmers.co.kr/learn/courses/30/lessons/12973
https://school.programmers.co.kr/learn/courses/30/lessons/12981/solution_groups?language=python3
https://school.programmers.co.kr/learn/courses/30/lessons/12953