結果
問題 | No.2726 Rooted Tree Nim |
ユーザー |
|
提出日時 | 2025-02-21 01:24:36 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,420 bytes |
コンパイル時間 | 6,247 ms |
コンパイル使用メモリ | 333,196 KB |
実行使用メモリ | 17,720 KB |
最終ジャッジ日時 | 2025-02-21 01:24:45 |
合計ジャッジ時間 | 8,354 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 1 |
other | AC * 3 WA * 10 |
ソースコード
#include <bits/stdc++.h>#include <atcoder/all>using mint = atcoder::static_modint<998244353>;//using mint = atcoder::static_modint<1000000007>;using namespace std;using namespace atcoder;using ld = long double;using ll = long long;#define mp(a,b) make_pair(a,b)#define rep(i,s,n) for(int i=s; i<(int)n; i++)const vector<int> dx{1,0,-1,0},dy{0,1,0,-1};void test(){vector<vector<int>> G(200,vector<int>(200));rep(i,0,100)rep(j,0,100-i){vector<bool> b(1000);rep(k,1,min(i+1,4))b[G[i-k][j+k]]=true;rep(k,1,min(j+1,4))b[G[i][j-k]]=true;while(b[G[i][j]])G[i][j]++;}rep(i,0,10){rep(j,0,10)cout << G[i][j] << " ";cout << "\n";}}void solve(){int n,k;cin >> n >> k;vector<vector<int>> G(n);rep(i,1,n){int a,b;cin >> a >> b;a--,b--;G[a].push_back(b);swap(a,b);G[a].push_back(b);}vector<int> a(n);rep(i,0,n)cin >> a[i];int g=0;queue<int> Q;Q.push(0);vector<int> d(n,-1);d[0]=0;while(Q.size()){int x=Q.front();Q.pop();for(auto y:G[x])if(d[y]==-1){Q.push(y);d[y]=d[x]+1;if(d[y]&1)g^=a[y];}}if(g)cout << "K\n";else cout << "P\n";}int main(){// test();ios::sync_with_stdio(false);cin.tie(nullptr);int T;cin >> T;rep(i,0,T)solve();}