본문 바로가기

코딩테스트

[이코테] 그리디 알고리즘

숫자 카드 게임

n,m = map(int, input().split())
card_list = []
for i in range(n):
    num_list = list(map(int,input().split()))
    card_list.append(min(num_list))
print(max(card_list))

1이 될 때까지

# 어떠한 수가 1이 될 때까지 수행
n,k = map(int, input().split())
count = 0
while True:
  l = n % k
  if n < k:
    count += l
    break
  if l == 0:
    count += 1
    n = n / k
    if n == 1:
      break
  else:
    count += l
    n = n - l

print(count)

교재 답안

result = 0
while True:
	target = (n // k) * k
    result += (n - target)
    n = target
    if n<k:
    	break
    result += 1
    n //= k

result += (n-1)
print(result)

'코딩테스트' 카테고리의 다른 글

[프로그래머스] 바탕화면 정리 python, java  (0) 2024.05.22
[이코테] Chap04 구현  (0) 2024.04.09
[Python] 공원 산책  (0) 2024.03.12
[Python] 가장 가까운 같은 글자  (0) 2024.03.07
[Python] 문자열 겹쳐쓰기  (0) 2024.03.05