코딩 테스트/프로그래머스99 타겟 넘버 첫번째 코드 DFS를 이용한 문제인데,이전에 책으로만 풀어보다가 직접 경험하려해보니 어려움이 있었다. 어느정도 코드를 작성한 후 마무리가 되지 않아다른 사람의 코드를 보고 참고했다. 개수를 올려가면서 index == number의 길이 일 때 모든 수를 사용했다는 의미이므로 제한을 둔다.그리고 target과 여태 더하거나 뺀 total을 비교하여 동일하면 1을 더한다.numbers안의 수를 더하거나 뺄 때 재귀함수를 사용하여 진행한다. def solution(numbers, target): global answer answer = 0 def dfs(index, total): global answer if index == len(numbers): .. 2024. 6. 1. 포켓몬 첫번째 코드 종류를 확인한 후 n//2개수보다 많으면 n//2를 출력하고그렇지 않으면 현재 있는 종류만큼 출력한다. def solution(nums): answer = 0 pocketmon = set(nums) if len(pocketmon) >= (len(nums)//2): answer = (len(nums)//2) else: answer = len(pocketmon) return answer 통과!링크https://github.com/ornni/programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/1/1845.%E2%80%85%.. 2024. 5. 30. 같은 숫자는 싫어 첫번째 코드 현재 위치의 값과 다음 위치의 값을 비교해가면서 같으면 넘어가고 아니면 정답에 포함한다! def solution(arr): answer = [] answer.append(arr[0]) now = arr[0] for i in arr: if i != now: answer.append(i) now = i return answer 통과!링크https://github.com/ornni/programmers/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/1/12906.%E2%80%85%EA%B0%99%EC%9.. 2024. 5. 29. 멀리 뛰기 첫번째 코드 def solution(n): count = 1 down = 1 for i in range(1, int(n/2)+1): up = 1 for j in range(i): up *= (n-i-j) down *= i count += up/down answer = count % 1234567 return answer 오류....두번째 코드 손으로 하나하나 써가다가 피보나치 같은 특성을 갖고 있음을 알았다.ap[i] = ap[i-1] + ap[i-2] 이렇게 단순한 특성이 있는데...나는 왜...;; def solution(n): ap = [.. 2024. 5. 28. 더 맵게 첫번째 코드 prioirty queue를 이용해서 정렬한 후 맨 앞과 그 다음을 뽑은 후 계산해서 넣는 과정을 반복해서 계산하도록 하였다. from queue import PriorityQueue def solution(scoville, K): prioirty = PriorityQueue() count = 0 for i in scoville: prioirty.put(i) while not prioirty.empty() and prioirty.queue[0] least = prioirty.get() if least >= K: continue else: mixed = prioirt.. 2024. 5. 25. 올바른 괄호 첫번째 코드 check라는 변수를 이용하여 "("인 경우에는 1을 더하고 ")"인 경우에는 -1을 더한다.하지만 ")"로 시작하는 경우 -1로 시작하지만 고려하지 않으므로 check가 0미만인 경우에 False로 break 하도록 한다.최종적으로 check가 0이 되어야 열리거나 닫혀있는 괄호는 없는 것이다. def solution(s): answer = True check = 0 for i in s: if i == "(": check += 1 elif i == ")": check -= 1 if check answer = False .. 2024. 5. 24. 이전 1 ··· 4 5 6 7 8 9 10 ··· 17 다음 728x90