Submission #588535

#TimeUsernameProblemLanguageResultExecution timeMemory
588535aris12345678Vlak (COCI20_vlak)C++14
70 / 70
21 ms20424 KiB
#include <bits/stdc++.h> using namespace std; struct node { bool word, nina, emilija; // int depth; node *child[26]; node() { word = nina = emilija = false; // depth = 0; for(int i = 0; i < 26; i++) child[i] = NULL; } }; typedef node *pnode; pnode root = new node(); void add(string s, bool nin, bool em) { int n = int(s.size()); pnode cur = root; for(int i = 0; i < n; i++) { if(cur->child[s[i]-'a'] == NULL) cur->child[s[i]-'a'] = new node(); // cur->child[s[i]-'a']->depth = 1+cur->depth; cur = cur->child[s[i]-'a']; if(!cur->nina) cur->nina = nin; if(!cur->emilija) cur->emilija = em; } cur->word = true; } bool dfs(pnode cur, bool play = true) { if(play) { for(int i = 0; i < 26; i++) { if(cur->child[i] == NULL) continue; if(cur->child[i]->nina) { if(!cur->child[i]->emilija) return true; if(!dfs(cur->child[i], false)) return true; } } } else { for(int i = 0; i < 26; i++) { if(cur->child[i] == NULL) continue; if(cur->child[i]->emilija) { if(!cur->child[i]->nina) return true; if(!dfs(cur->child[i], true)) return true; } } } return false; } int main() { int n, m; scanf("%d\n", &n); for(int i = 0; i < n; i++) { string s; cin >> s; add(s, true, false); } scanf("%d\n", &m); for(int i = 0; i < m; i++) { string s; cin >> s; add(s, false, true); } if(dfs(root)) printf("Nina\n"); else printf("Emilija\n"); return 0; }

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:62:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   62 |     scanf("%d\n", &n);
      |     ~~~~~^~~~~~~~~~~~
Main.cpp:68:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   68 |     scanf("%d\n", &m);
      |     ~~~~~^~~~~~~~~~~~
#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...