Recent Posts
Notice
No Rules Rules
베르트랑 공준 (feat. 백준, 4948번) 본문
728x90
반응형
베르트랑 공준
https://www.acmicpc.net/problem/4948
반응형
// woohyeon.kim
// https://www.acmicpc.net/problem/4948
#include <iostream>
#include <cmath>
using namespace std;
int main() {
ios::sync_with_stdio(false), cin.tie(NULL);
register int N;
register bool arr[123456 * 2 + 1] = { false };
arr[0] = arr[1] = true;
register int e = sqrt(123456 * 2);
for (register int i = 2, j; i <= e; ++i)
if (!arr[i])
for (j = i << 1; j <= 123456 * 2; j += i)
arr[j] = true;
while (true) {
cin >> N;
if (!N) break;
register int ans = 0;
for (register int i = N + 1; i <= 2 * N; ++i)
if (!arr[i]) ++ans;
cout << ans << "\n";
}
return 0;
}
// *&)*@*
문제로 주어진 N의 2배만큼 미리 소수를 구해두고, 문제에서 주어진 N+1 ~ 2N까지 소수의 개수를 구하는 방법입니다.
이 또한 "에라토스테네스의 체" 로 미리 소수를 구했습니다. 아래 문제를 선행하시길 권장합니다.
728x90
반응형
'생활 > 코테' 카테고리의 다른 글
팩토리얼 (feat. 백준, 10872번) (0) | 2022.08.01 |
---|---|
골드바흐의 추측 (feat. 백준, 9020번) (0) | 2022.08.01 |
소수 구하기 (feat. 백준, 1929번) (0) | 2022.07.31 |
소인수분해 (feat. 백준, 11653번) (0) | 2022.07.31 |
소수 (feat. 백준, 2581번) (0) | 2022.07.31 |
Comments