제출 #1171552

#제출 시각아이디문제언어결과실행 시간메모리
1171552HanksburgerVlak (COCI20_vlak)C++20
70 / 70
22 ms31556 KiB
#include <bits/stdc++.h> using namespace std; pair<int, int> adj[200005][26]; string str[2][200005]; int n[2], cnt; pair<int, int> dfs(int u) { pair<int, int> ans={0, 0}; for (int i=0; i<26; i++) { int v=adj[u][i].first, w=adj[u][i].second; if (!v) continue; pair<int, int> res=dfs(v); ans.first|=(w&1 && !res.second); ans.second|=(w&2 && !res.first); } return ans; } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); for (int i=0; i<2; i++) { cin >> n[i]; for (int j=0; j<n[i]; j++) { cin >> str[i][j]; int cur=0; for (int k=0; k<str[i][j].size(); k++) { int x=str[i][j][k]-'a'; if (!adj[cur][x].first) adj[cur][x].first=++cnt; adj[cur][x].second|=1<<i; cur=adj[cur][x].first; } } } cout << (dfs(0).first?"Nina":"Emilija"); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...