import sys
n = int(input())
arr_c = []
for _ in range(n):
a, b = map(int, sys.stdin.readline().split())
arr_c.append((a, b))
arr_c.sort(key=lambda x: (x[1], x[0]))
result = []
endtime = 0
for a, b in arr_c:
if a >= endtime:
result.append((a, b))
endtime = b
print(len(result))
리스트가 아닌 튜플을 다루는 것과 리스트 정렬함수에서 lambda를 쓰는 것이 익숙하지 않다.
n = int(input())
n = 1000 - n
result = 0
if n >= 500:
result += (n // 500)
n %= 500
if n >= 100:
result += (n // 100)
n %= 100
if n >= 50:
result += (n // 50)
n %= 50
if n >= 10:
result += (n // 10)
n %= 10
if n >= 5:
result += (n //5)
n %= 5
result += n
print(result)
다른사람은 어떻게 풀었나 검색해봤는데 엄청 간단한 풀이가 있었다...
a = 1000 - int(input())
b = [500, 100, 50, 10, 5, 1]
count = 0
for i in b:
count += a // i
a %= i
print(count)
arr_m = input().split('-')
result = 0
for i in arr_m.pop(0).split('+'):
result += int(i)
for i in arr_m:
arr_p = i.split('+')
for j in arr_p:
result -= int(j)
print(result)
은근 어려웠다