Submission #681747

#TimeUsernameProblemLanguageResultExecution timeMemory
681747penguin133Zamjena (COCI18_zamjena)C++17
70 / 70
91 ms10200 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pi pair<int, int> #define pii pair<int, pi> #define fi first #define se second #ifdef _WIN32 #define getchar_unlocked _getchar_nolock #endif int n; string s[50005], t[50005]; map<string, vector<int> > mp; int stuf[50005], val; bool die = 0; void dfs(string bruh){ for(auto i : mp[bruh]){ if(!stuf[i])stuf[i] = val; else { if(stuf[i] != val)die = 1; continue; } if(s[i] != bruh && (s[i][0] < '0' || s[i][0] > '9'))dfs(s[i]); if(t[i] != bruh && (t[i][0] < '0' || t[i][0] > '9'))dfs(t[i]); } } void solve(){ cin >> n; for(int i=1;i<=n;i++)cin >> s[i]; for(int i=1;i<=n;i++)cin >> t[i]; for(int i=1;i<=n;i++){ if(s[i][0] >= '0' && s[i][0] <= '9')continue; mp[s[i]].push_back(i); } for(int i=1;i<=n;i++){ if(t[i][0] >= '0' && t[i][0] <= '9')continue; mp[t[i]].push_back(i); } for(int i=1;i<=n;i++){ if(s[i][0] < '0' || s[i][0] > '9'){ if((t[i][0] >= '0' && t[i][0] <= '9')){ val = 0; for(auto j : t[i])val = val * 10 + (j - '0'); dfs(s[i]); } else if(stuf[i]){ val = stuf[i]; dfs(s[i]); } } if(t[i][0] < '0' || t[i][0] > '9'){ if(s[i][0] >= '0' && s[i][0] <= '9'){ val = 0; for(auto j : s[i])val = val * 10 + (j - '0'); dfs(t[i]); } else if(stuf[i]){ val = stuf[i]; dfs(t[i]); } } else if((s[i][0] >= '0' && s[i][0] <= '9') && (t[i][0] >= '0' && t[i][0] <= '9')){ int val2 = 0, val3 = 0; for(auto j : s[i])val2 = val2 * 10 + (j - '0'); for(auto j : t[i])val3= val3 * 10 + (j - '0'); if(val2 != val3)die = 1; } } cout << (die ? "NE" : "DA"); } main(){ ios::sync_with_stdio(0);cin.tie(0); int tc = 1; //cin >> tc; for(int tc1=1;tc1<=tc;tc1++){ // cout << "Case #" << tc1 << ": "; solve(); } }

Compilation message (stderr)

zamjena.cpp:76:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   76 | 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...