목록Python/백준 (129)
가오리의 코딩일기
people = int(input()) times = list(map(int, input().split())) result = 0 times.sort() for i in range(people): for j in range(i+1): result += times[j] print(result)
meeting = int(input()) times = [[0]*2 for _ in range(meeting)] for i in range(meeting): start, end = map(int, input().split()) times[i][0] = start times[i][1] = end times.sort(key=lambda x: (x[1], x[0])) result = 1 endTime = times[0][1] for i in range(1, meeting): if times[i][0] >= endTime: result += 1 endTime = times[i][1] print(result)
dy, dx = map(int, input().split()) if dy == 1: print(1) elif dy == 2: print(min(4, (dx+1)//2)) else: if dx
findNumber = list(input()) findNumber.sort(reverse=True) total = 0 if '0' not in findNumber: print(-1) else: for i in findNumber: total += int(i) if total % 3 != 0: print(-1) else: print(''.join(findNumber)) findNumber = list(input()) findNumber.sort(reverse=True) total = 0 for i in findNumber: total += int(i) if '0' not in findNumber or total % 3 != 0: print(-1) else: print(''.join(findNumber))
kindOfCoin, makeMoney = map(int, input().split()) coinList = [] for _ in range(kindOfCoin): coinList.append(int(input())) result = 0 for i in range(kindOfCoin-1, -1, -1): if makeMoney == 0: break if coinList[i] > makeMoney: continue result += makeMoney // coinList[i] makeMoney %= coinList[i] print(result)
import sys input = sys.stdin.readline n, c = map(int, input().split()) housePosition = [] for _ in range(n): housePosition.append(int(input())) housePosition.sort() def binary_search(housePosition, start, end): while start = install + middle: install = housePosition[i] installCount += 1 if installCount >= c: global result start = middle + 1 result = middle else: end = middle - 1 start = 1 end = ..
import sys a, b = map(int, sys.stdin.readline().split()) aList = list(map(int, sys.stdin.readline().split())) bList = list(map(int, sys.stdin.readline().split())) resultList = sorted(aList+bList) print(*resultList)
import sys ohLan, needLan = map(int, sys.stdin.readline().split()) ohLanList = [] # 오영식이 가지고 있는 랜선 리스트 for _ in range(ohLan): ohLanList.append(int(sys.stdin.readline())) start, end = 1, max(ohLanList) # 가장 작은 값, 리스트에서 가장 큰 값 while start = needLan: # 랜선의 개수가 분기점 start = middle + 1 else: end = middle - 1 print(end)
→ nCr = n!/(n-r)!r! → 2의 지수 = n!의 2의 지수 - (n-r)!의 2의 지수 - r!의 2의 지수 → 5의 지수 = n!의 5의 지수 - (n-r)!의 5의 지수 - r!의 5의 지수 → 2의 지수와 5의 지수 중 작은 값을 고르면 된다 n, m = map(int, input().split()) def twoCount(n): result2 = 0 while n != 0: n = n//2 result2 += n return result2 def fiveCount(n): result5 = 0 while n != 0: n = n//5 result5 += n return result5 print(min(twoCount(n)-twoCount(n-m)-twoCount(m), fiveCount..