Submission #1096488

#TimeUsernameProblemLanguageResultExecution timeMemory
1096488YugiHackerCezar (COCI16_cezar)C++17
30 / 100
1 ms604 KiB
/* www.youtube.com/YugiHackerChannel oj.vnoi.info/user/YugiHackerKhongCopCode */ #include<bits/stdc++.h> #define el cout<<"\n" #define f0(i,n) for(int i=0;i<n;++i) #define f1(i,n) for(int i=1;i<=n;++i) #define maxn 102 using namespace std; int n, b[maxn], deg[maxn], topo[maxn], cnt; string s[maxn]; set <int> a[26]; main() { ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin >> n; f1 (i, n) cin >> s[i]; f1 (i, n) cin >> b[i]; f1 (i, n) for (int j=i+1; j<=n; j++) { int x = b[i], y = b[j]; bool ok = 0; f0 (k, min(s[x].size(), s[y].size())) if (s[x][k] != s[y][k]) { a[s[x][k]-'a'].insert(s[y][k]-'a'); ok = 1; break; } if (ok == 0 && s[x].size() > s[y].size()) return cout << "NE", 0; } queue <int> q; f0 (i, 26) for (int v:a[i]) deg[v]++; f0 (i, 26) if (deg[i] == 0) q.push(i); while (q.size()) { int u = q.front(); q.pop(); topo[u] = ++cnt; for (int v:a[u]) if (--deg[v] == 0) q.push(v); } f0 (i, 26) if (deg[i]) return cout << "NE", 0; f0 (i, 26) if (!topo[i]) topo[i] = ++cnt; cout << "DA", el; f0 (i, 26) cout << (char)('a' + topo[i] - 1); }

Compilation message (stderr)

cezar.cpp:14:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   14 | main()
      | ^~~~
cezar.cpp: In function 'int main()':
cezar.cpp:7:30: warning: comparison of integer expressions of different signedness: 'int' and 'const long unsigned int' [-Wsign-compare]
    7 | #define f0(i,n) for(int i=0;i<n;++i)
......
   24 |         f0 (k, min(s[x].size(), s[y].size()))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cezar.cpp:24:9: note: in expansion of macro 'f0'
   24 |         f0 (k, min(s[x].size(), s[y].size()))
      |         ^~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...