#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int trash[1000];
int visited[1000] = { 0, };
void toss(int start, int N, int cnt){
int temp = 1;
int start_cpy = start;
if (start == N && visited[start_cpy-2]==1) return;
if (start == N && visited[start_cpy-2]==0) {
trash[cnt] = start_cpy;
cnt++;
visited[start_cpy - 2] = 1;
return;
}
if (visited[start-2] == 0) {
while (1) {
if (start_cpy > N) break;
if (visited[start_cpy - 2] != 1)
{
trash[cnt] = start_cpy;
cnt++;
visited[start_cpy - 2] = 1;
}
start_cpy = start_cpy + start;
}
}
toss(start + 1, N, cnt);
}
int main() {
int N = 0;
int K = 0;
scanf("%d", &N);
scanf("%d", &K);
int cnt = 0;
toss(2, N, cnt);
printf("%d", trash[K-1]);
return 0;
}
'DEV > 알고리즘 문제 풀이' 카테고리의 다른 글
10998번 (0) | 2021.03.12 |
---|---|
1001번 (0) | 2021.03.12 |
백준 1914번 - 하노이탑 [c언어] (0) | 2020.04.16 |
백준 11729번 - 하노이 탑 문제 [c언어] (0) | 2020.04.16 |