Submission #1412020
Source Code Expand
#include <iostream> #include <sstream> #include <fstream> #include <cstdio> #include <cstdlib> #include <cmath> #include <cctype> #include <cstring> #include <algorithm> #include <numeric> #include <functional> #include <string> #include <vector> #include <deque> #include <stack> #include <queue> #include <list> #include <map> #include <set> #include <utility> #include <bitset> #include <limits> #include <climits> using namespace std; #ifdef DEBUG #define NDEBUG #endif #undef NDEBUG #include <cassert> typedef long long ll; typedef pair<int, int> ii; #define sz(a) int((a).size()) #define pb push_back #define FOR(var,from,to) for(int var=(from);var<=(to);++var) #define rep(var,n) for(int var=0;var<(n);++var) #define rep1(var,n) for(int var=1;var<=(n);++var) #define repC2(vari,varj,n) for(int vari=0;vari<(n)-1;++vari)for(int varj=vari+1;varj<(n);++varj) #define ALL(c) (c).begin(),(c).end() #define RALL(c) (c).rbegin(),(c).rend() #define tr(i,c) for(auto i=(c).begin(); i!=(c).end(); ++i) #define found(s,e) ((s).find(e)!=(s).end()) #define mset(arr,val) memset(arr,val,sizeof(arr)) #define mid(x,y) ((x)+((y)-(x))/2) #define IN(x,a,b) ((a)<=(x)&&(x)<=(b)) int solve(vector<vector<int>>& ne) { vector<int> xors; int N = ne.size(); vector<int> parent(N); vector<vector<int>> children(N); parent[0] = -1; queue<int> q; q.push(0); vector<int> r; vector<int> visited(N, false); while (!q.empty()){ int u = q.front(); q.pop(); r.push_back(u); visited[u] = true; for (int v : ne[u]) { if (visited[v]) continue; parent[v] = u; children[u].push_back(v); q.push(v); } } reverse(ALL(r)); vector<vector<int>> legs(N); // cout << parent << endl; // cout << r << endl; rep(i,N) { int v = r[i], u = parent[v]; int L = legs[v].size(); int msg = -1; switch (L) { case 0: msg = 1; if (v == 0) xors.push_back(msg); break; case 1: msg = legs[v][0] + 1; if (v == 0) xors.push_back(msg); break; default: int x = 0; rep(i, L) x ^= legs[v][i]; xors.push_back(x); msg = 1; break; } if (u != -1 && msg != -1) { legs[u].push_back(msg); } } int ans = 0; for (int x : xors) ans += x; return ans; } int main(){ int N; cin >> N; vector<vector<int>> ne(N); rep(i, N-1) { int x, y; cin >> x >> y; --x; --y; ne[x].pb(y); ne[y].pb(x); } int ans = solve(ne); cout << (ans == 0 ? "Bob" : "Alice") << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Game on Tree |
User | naoya_t |
Language | C++14 (Clang 3.8.0) |
Score | 0 |
Code Size | 2937 Byte |
Status | WA |
Exec Time | 224 ms |
Memory | 17784 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 1100 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample1.txt, sample2.txt, sample3.txt, sample4.txt |
All | sample1.txt, sample2.txt, sample3.txt, sample4.txt, a1.txt, a10.txt, a11.txt, a12.txt, a13.txt, a14.txt, a15.txt, a16.txt, a17.txt, a18.txt, a19.txt, a2.txt, a20.txt, a21.txt, a22.txt, a23.txt, a24.txt, a25.txt, a26.txt, a27.txt, a28.txt, a29.txt, a3.txt, a30.txt, a4.txt, a5.txt, a6.txt, a7.txt, a8.txt, a9.txt, b1.txt, b2.txt, b3.txt, b4.txt, b5.txt, sample1.txt, sample2.txt, sample3.txt, sample4.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
a1.txt | AC | 9 ms | 1016 KB |
a10.txt | WA | 19 ms | 1792 KB |
a11.txt | AC | 19 ms | 1792 KB |
a12.txt | AC | 19 ms | 1792 KB |
a13.txt | WA | 212 ms | 15096 KB |
a14.txt | WA | 212 ms | 15096 KB |
a15.txt | AC | 166 ms | 12152 KB |
a16.txt | AC | 216 ms | 15224 KB |
a17.txt | WA | 206 ms | 15096 KB |
a18.txt | WA | 210 ms | 15224 KB |
a19.txt | AC | 198 ms | 15224 KB |
a2.txt | WA | 5 ms | 512 KB |
a20.txt | AC | 209 ms | 15864 KB |
a21.txt | AC | 170 ms | 12920 KB |
a22.txt | WA | 205 ms | 15096 KB |
a23.txt | AC | 210 ms | 14968 KB |
a24.txt | WA | 168 ms | 12152 KB |
a25.txt | WA | 211 ms | 15224 KB |
a26.txt | AC | 209 ms | 15224 KB |
a27.txt | AC | 205 ms | 15224 KB |
a28.txt | WA | 205 ms | 15224 KB |
a29.txt | AC | 215 ms | 15864 KB |
a3.txt | AC | 10 ms | 1024 KB |
a30.txt | AC | 169 ms | 12920 KB |
a4.txt | WA | 19 ms | 1792 KB |
a5.txt | WA | 19 ms | 1792 KB |
a6.txt | AC | 19 ms | 1792 KB |
a7.txt | AC | 19 ms | 1792 KB |
a8.txt | WA | 19 ms | 1792 KB |
a9.txt | WA | 19 ms | 1792 KB |
b1.txt | AC | 211 ms | 17784 KB |
b2.txt | AC | 221 ms | 17784 KB |
b3.txt | AC | 220 ms | 17784 KB |
b4.txt | AC | 224 ms | 17784 KB |
b5.txt | AC | 216 ms | 17784 KB |
sample1.txt | AC | 1 ms | 256 KB |
sample2.txt | AC | 1 ms | 256 KB |
sample3.txt | AC | 1 ms | 256 KB |
sample4.txt | AC | 1 ms | 256 KB |