Submission #673781

#TimeUsernameProblemLanguageResultExecution timeMemory
673781chanhchuong123Vlak (COCI20_vlak)C++14
70 / 70
18 ms22608 KiB
#include <bits/stdc++.h> using namespace std; #define task "C" #define fi first #define se second #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() template <typename T1, typename T2> bool mini(T1 &a, T2 b) { if (a > b) {a = b; return true;} return false; } template <typename T1, typename T2> bool maxi(T1 &a, T2 b) { if (a < b) {a = b; return true;} return false; } struct Trie { Trie* nxt[26]; int cnt; Trie() { for (int i = 0; i < 26; ++i) nxt[i] = nullptr; cnt = 0; } } *N, *E; void add(Trie *p, string s) { for (int i = 0; i < s.size(); ++i) { int LOVE = s[i] - 'a'; if (p->nxt[LOVE] == nullptr) p->nxt[LOVE] = new Trie(); p = p->nxt[LOVE]; ++p->cnt; } } const int MAX = 2e5 + 3; int n; string s; bool dfs(Trie *u, Trie *v, int c, int type) { if (type == 0) { if (u->nxt[c] == nullptr) return false; if (v->nxt[c] == nullptr) return true; } else { if (v->nxt[c] == nullptr) return false; if (u->nxt[c] == nullptr) return true; } bool ok = false; u = u->nxt[c]; v = v->nxt[c]; for (int cc = 0; cc < 26; ++cc) { ok |= dfs(u, v, cc, type ^ 1); } return !ok; } main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); N = new Trie(); E = new Trie(); cin >> n; while (n--) { cin >> s; add(N, s); } cin >> n; while (n--) { cin >> s; add(E, s); } for (int i = 0; i < 26; i++) { if (dfs(N, E, i, 0)) { cout << "Nina"; return 0; } } cout << "Emilija"; }

Compilation message (stderr)

Main.cpp: In function 'void add(Trie*, std::string)':
Main.cpp:27:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |     for (int i = 0; i < s.size(); ++i) {
      |                     ~~^~~~~~~~~~
Main.cpp: At global scope:
Main.cpp:54:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   54 | main() {
      | ^~~~
#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...