Submission #1235441

#TimeUsernameProblemLanguageResultExecution timeMemory
1235441mazenxvVlak (COCI20_vlak)C++20
70 / 70
14 ms22344 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define int long long #define all(v) v.begin(), v.end() #define allr(v) v.rbegin(), v.rend() #define F first #define S second #define P push_back #define endl '\n' #define pqmn pi , vector<pi> , greater<pi> const int N = 1e6 + 10; const int R = 5e3 + 10; const int mod = 1e9 + 7; const int inf = 1e9 + 10; const ll infll = 1e17; typedef pair<int, int> pi; typedef vector<int> vi; typedef vector<pi> vii; typedef vector<vi> vvi; typedef vector<vii> vvii; const int CHAR = 26; struct trie { trie* child[CHAR]; trie() { memset(child, 0, sizeof child); } void insert(string &str , int i = 0) { if (i == (int)str.size()) { return; } int cur = str[i]-'a'; if (child[cur] == 0) child[cur] = new trie(); child[cur]->insert(str , i+1); } int Win(trie *f , trie *s , int turn){ if(turn){ if(s == NULL) return 1; if(f == NULL) return 0; int mx = 0; for(int i = 0 ; i < 26 ; i++){ mx = max(mx , Win(f->child[i] , s->child[i] , !turn)); } return mx; } else{ if(f == NULL) return 0; if(s == NULL) return 1; int mn = 1; for(int i = 0 ; i < 26 ; i++){ mn = min(mn , Win(f->child[i] , s->child[i] , !turn)); } return mn; } } }; int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); auto f = new trie(); auto s = new trie(); int n , m; cin >> n; for(int i = 0 ; i < n ; i++){ string s; cin >> s; f->insert(s); } cin >> m; for(int i = 0 ; i < m ; i++){ string t; cin >> t; s->insert(t); } if(f->Win(f , s , 1)) cout << "Nina" << endl; else cout << "Emilija" << endl; return 0; }
#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...