#8 17103

이지훈·2025년 9월 29일

코딩테스트 스터디

목록 보기
8/11
post-thumbnail

결과

어제 말한대로 체 이용해서 문제를 풀었고,

52ms가 나왔는데 한 중간정도 되는거 같다

굿굿

작성 코드

#include <iostream>
#include <vector>
using namespace std;

int main(void) {
    int max = 1000000;

    vector<bool> isPrime(max, true);

    for (int i = 2; i * i < max; i++) {
        if (isPrime[i]) {
            for (int j = i * i; j <= max; j += i) {
                isPrime[j] = false;
            }
        }
    }
    
    int t;
    cin >> t;

    for(int i = 0; i < t; i++){
        int n, cnt = 0;
        cin >> n;
        for(int j = 2; j <= n / 2; j++) {
            if(isPrime[j] && isPrime[n - j]) cnt++;
        }
        cout << cnt << "\n";
    }

    return 0;
}
profile
Hello!

0개의 댓글