結果
問題 | No.1665 quotient replace |
ユーザー |
![]() |
提出日時 | 2021-09-14 22:03:58 |
言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 415 ms / 3,000 ms |
コード長 | 592 bytes |
コンパイル時間 | 4,899 ms |
コンパイル使用メモリ | 179,456 KB |
実行使用メモリ | 15,104 KB |
最終ジャッジ日時 | 2024-06-27 13:36:25 |
合計ジャッジ時間 | 13,330 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 41 |
ソースコード
#include <bits/stdc++.h> #include <atcoder/all> using namespace std; using namespace atcoder; int main(){ int N; cin >> N; int M = 1000000; vector<int>C(M+1,0); for(int i=0;i<N;i++){ int a;cin >> a; C[a]^=1; } vector<int>p(M+1,1); vector<int>gs(M+1,0); for(int i=2;i<=M;i++){ if(p[i]==0)continue; for(int j=2*i;j<=M;j+=i){ p[j] = 0; } for(int j=i;j<=M;j+=i){ if(C[j]==0)continue; int y = j; while(y%i==0)y/=i,gs[j]++; } } int g = 0; for(int i=1;i<=M;i++)g^=gs[i]; cout << (g?"white":"black") << endl; return 0; }