목록Coding test (63)
재 현
N,K가 주어지고 K원을 만드는데 필요한 동전 개수의 최솟값을 출력한다. 알고리즘 그리디에 정리해둔 거스름돈 문제와 풀이가 유사하다. n, k = map(int, input().split()) array = list() for _ in range(n): array.append(int(input())) array.reverse() count = 0 for i in array: count += k // i k %= i print(count) 처음엔 array[-i] 식으로 뒷부분으로 접근하려 했으나 out of range오류가 뜸을 발견하고 reverse() 후 접근했다.
answer = True phone_book.sort() if p1,p2 in zip(phone_book, phone_book[1:]): if p2.startswith(p1): answer = False return answer
- 이름에 대해서 어떤 수를 기록하고 저장할 수 있는 구조 - 이름 대신 번호가 주어졌다면 ->배열 - 문자열로 원소를 찾아갈 수 있는 구조 -> 해시 1. d = {} for x in participants: d[x] = d.get(x,0)+1 for y in completion: d[x] -= 1 idx = list[k for k,v in d.items() if v>0] answer = idx 2. participants.sort() completion.sort() for i in range(len(participants)) if participants[i] in completion[i]: return participants[i] 3. answer = collections.counter(partici..