#Algorithm
문제 번호
2885번(S3)
알고리즘 + 이론
그리디 알고리즘
처음에 시간초과가 났었는데 사이즈를 구하는 코드를 math 라이브러리를 이용해서 log를 사용하니 괜찮아졌다.
정답 코드
# 2885번
import math
K = int(input())
choco_size = 2 ** math.ceil(math.log2(K))
current_choco_size = choco_size
cnt = 0
while True:
if K == choco_size or K == 0:
print(choco_size, cnt)
break
else:
current_choco_size = current_choco_size // 2
cnt += 1
if K >= current_choco_size:
K -= current_choco_size
느낀점 & 피드백
그리디가 제일 좋다
이 글이 도움이 되셨나요?