BOJ 15311 | 약 팔기

전승민·2023년 5월 3일
0

BOJ 기록

목록 보기
47/68

이 문제를 처음 보자마자 이진수가 떠올랐다. 1 2 4 8 ... 등의 수가 있다면 다음 자릿수 - 1까지의 모든 수를 만들 수 있기 때문이다.

그러나 이 문제는 그렇게 풀 수 없다. 알약이 연속된 자리에 위치해 있어야 하기 때문이다.

여기서 이 문제를 만든 사람의 굉장히 악질적인 면모가 보이는데, 등차수열, 이진수같은 이상한 생각을 하게 해놓고서 N/KN/K를 500으로 준 것이다.

이래놓으면 놀랍게도 1000진법으로 문제를 해결할 수 있다.

N은 최대 100 (1000) 이므로 1000의 자릿수 1000개, 1의 자릿수 1000개만 만들어놓으면 그 어떤 1,000,000까지의 수도 만들 수 있다.

역시 나코더... 쉽지 않다.

코드

print(1999)
print('1 ' * 999, '1000 ' * 1000)
profile
알고리즘 공부한거 끄적이는 곳

0개의 댓글