#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define endl "\n";
#define all(x) x.begin(), x.end()
#define int long long
const int MOD = 1e9 + 7;
const ll INF = 1e18;
const int N = 10;
int trieA[N][26];
int trieB[N][26];
int nodeCount;
void insert(int trie[N][26], string& s) {
int node = 1;
for (char c : s) {
if (trie[node][c-'a'] == 0) {
trie[node][c-'a'] = ++nodeCount;
}
node = trie[node][c-'a'];
}
}
const int Alice = 0;
const int Bob = 1;
bool rec(bool turn, int nodeA, int nodeB) {
bool res = 0;
if (turn == Alice) {
if (nodeB == 0) return 1; // winner!
if (nodeA == 0) return 0; // loser! (but winner first)
for (int next = 0; next < 26; next++) {
res |= !rec(!turn, trieA[nodeA][next], trieB[nodeB][next]);
}
return res;
} else {
if (nodeA == 0) return 1;
if (nodeB == 0) return 0;
for (int next = 0; next < 26; next++) {
res |= !rec(!turn, trieA[nodeA][next], trieB[nodeB][next]);
}
return res;
}
}
void solve() {
int n; cin >> n;
vector<string> a(n);
nodeCount = 1;
for (int i = 0; i < n; i++) {
cin >> a[i];
insert(trieA, a[i]);
}
int m; cin >> m;
vector<string> b(m);
nodeCount = 1;
for (int i = 0; i < m; i++) {
cin >> b[i];
insert(trieB, b[i]);
}
bool ans = rec(0, 1, 1);
if (ans == 1) {
cout << "Nina\n";
} else {
cout << "Emilija\n";
}
}
signed main() {
ios::sync_with_stdio(0); cin.tie(NULL);
// freopen("island.in", "r", stdin);
// freopen("ans.out", "w", stdout);
ll t = 1; //cin >> t;
while (t--) {
solve();
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |