#1534
제곱수의 합
- 시간 제한
- 1s
- 메모리 제한
- 512MB
- 제출
- 21
- 정답
- 13
- 맞힌 사람
- 10
- 정답 비율
- 76.9%
문제
모든 자연수는 서로 다른 의 거듭제곱의 합으로 나타낼 수 있다. 예를 들어 이고, 이다.
그렇다면 대신 다른 정수 의 거듭제곱을 사용하면 어떨까?
이상 이하의 자연수 중에서 서로 다른 의 거듭제곱의 합으로 나타낼 수 없는 수의 개수를 구해 보자. 사용할 수 있는 거듭제곱은 이며, 각 거듭제곱은 최대 한 번만 사용할 수 있다.
입력
첫째 줄에 세 정수 , , 가 공백으로 구분되어 주어진다.
출력
이상 이하인 정수 중 의 서로 다른 음이 아닌 정수 거듭제곱의 합으로 표현할 수 없는 정수의 개수를 출력한다.
예제 1
10 20 4
출력 1
8
예제 2
1 1000000000000000000 2
출력 2
0
예제 3
1 1000000000000000000 3
출력 3
999999725122093057
힌트
예제 1에서 이상 이하의 수 중 서로 다른 의 거듭제곱의 합으로 나타낼 수 있는 수는 다음 세 개이다.
이상 이하에는 모두 개의 수가 있으므로, 이 세 수를 제외한 개의 수는 서로 다른 의 거듭제곱의 합으로 나타낼 수 없다.
- 문제를 만든 사람
- 조서현
- 알고리즘 분류
코드 제출
코드를 제출하려면 로그인이 필요합니다.
로그인내 제출
제출 내역이 없습니다.
맞은 사람
| # | 순위 | 사용자 | 언어 | 시간 | 메모리 | 코드 길이 | |
|---|---|---|---|---|---|---|---|
| 10580 | 🥇 | SW-IT Contest는 충남대학교 컴퓨터인공지능학부 알고리즘 동아리 ANA에서 주최하는 프로그래밍 대회로, 팀으로 출전하여 알고리즘 문제를 해결하는 대회입니다. | C++ | 1ms | 1432KB | 899B | |
| 10714 | 🥈 | 실외기선풍기세탁기 | C++ | 1ms | 1496KB | 588B | |
| 10302 | 🥉 | 황현석 | C++ | 1ms | 1496KB | 455B | |
| 10524 | 4 | Kokiri is cute | C++ | 1ms | 1496KB | 529B | |
| 10654 | 5 | 세얼간이 | C++ | 1ms | 1496KB | 898B | |
| 10752 | 6 | OOOOOOOO | C++ | 1ms | 1496KB | 861B | |
| 10479 | 7 | 스피드런도 런이다 | Python | 9ms | 9144KB | 391B | |
| 10926 | 8 | 이채환여친구함 | Python | 10ms | 9196KB | 300B | |
| 10988 | 9 | 백성현 | PyPy | 23ms | 49868KB | 695B | |
| 10588 | 10 | cpp = competitive python programming | PyPy | 24ms | 49760KB | 316B |
난이도 투표
로그인 후 AC 받으면 투표할 수 있습니다.