[백준/BOJ] 백준 2960번 : 에라토스테네스의 체
2020. 8. 19. 12:48ㆍ알고리즘 문제풀이
https://www.acmicpc.net/problem/2960
규칙을 이용해 k번째 지워진 수를 구한다
코드
#include <iostream>
#include <cstring>
using namespace std;
int n, k;
int check[1001];
int main()
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
memset(check, 0, sizeof(check));
int cnt = 0;
cin >> n >> k;
for (int i = 2; i <= n; i++)
{
if (check[i] == 0)
{
check[i] = 1;
cnt++;
//k번째 지워진 수 일때
if (cnt == k)
{
cout << i;
return 0;
}
}
for (int j = i * 2; j <= n; j = j + i)
{
if (check[j] == 0)
{
check[j] = 1;
cnt++;
//k번째 지워진 수 일때
if (cnt == k)
{
cout << j;
return 0;
}
}
}
}
return 0;
}
'알고리즘 문제풀이' 카테고리의 다른 글
[백준/BOJ] 백준 1963번 : 소수 경로 (0) | 2020.08.20 |
---|---|
[백준/BOJ] 백준 9328번 : 열쇠 (0) | 2020.08.20 |
[백준/BOJ] 백준 11052번 : 카드 구매하기 (0) | 2020.08.18 |
[백준/BOJ] 백준 9461번 : 파도반 수열 (0) | 2020.08.18 |
[백준/BOJ] 백준 11727번 : 2×n 타일링 2 (0) | 2020.08.18 |