結果

問題 No.2724 Coprime Game 1
ユーザー MasKoaTSMasKoaTS
提出日時 2024-01-03 19:54:37
言語 C
(gcc 12.3.0)
結果
RE  
実行時間 -
コード長 960 bytes
コンパイル時間 289 ms
コンパイル使用メモリ 34,048 KB
実行使用メモリ 13,816 KB
最終ジャッジ日時 2024-04-12 20:50:44
合計ジャッジ時間 2,826 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 RE -
testcase_01 RE -
testcase_02 RE -
testcase_03 RE -
testcase_04 RE -
testcase_05 RE -
testcase_06 RE -
testcase_07 RE -
権限があれば一括ダウンロードができます

ソースコード

diff #

#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")

#include <stdio.h>
#define T_MAX 100000
#define N_MAX 3000000


int main(void){
    int t;  scanf("%d", &t);
    int query[T_MAX];
    for(int i = 0; i < t; ++i){
        scanf("%d", &query[i]);
    }

    int is_not_prime[N_MAX + 1] = {0};
    for(int i = 2; i < N_MAX + 1; ++i){
        if(is_not_prime[i] == 1){
            continue;
        }
        for(int j = i * i; j < N_MAX + 1; j += i){
            is_not_prime[j] = 1;
        }
    }

    for(int i = 0; i < t; ++i){
        int n = query[i];
        if(is_not_prime[n] == 0){
            printf("%c\n", 'P');
            continue;
        }
        int cnt = n - 2;
        for(int j = n / 2 + 1; j < n; ++j){
            cnt -= is_not_prime[j] ^ 1;
        }
        if(cnt & 1){
            printf("%c\n", 'K');
        }
        else{
            printf("%c\n", 'P');
        }
    }

    return 0;
}
0