Submission #855726

#TimeUsernameProblemLanguageResultExecution timeMemory
855726vjudge1Zamjena (COCI18_zamjena)C++17
42 / 70
85 ms12492 KiB
#include <bits/stdc++.h> using namespace std; #pragma GCC optimize("Ofast,O3,unroll-loops") #define int long long #define vi vector<int> #define vvi vector<vi> #define pii pair<int, int> #define vpi vector<pii> #define vvpi vector<vpi> #define vb vector<bool> #define vvb vector<vb> #define endl "\n" #define sp << " " << #define F(i, s, n) for(int i = s; i < n; i++) #define pb push_back #define fi first #define se second int mod = 998244353; int inf = LLONG_MAX >> 3; int mult(int x, int y) { return (x%mod)*(y%mod)%mod; } void solve() { int n; cin >> n; vector<string> statements[2]; F(i, 0, n) { string x; cin >> x; statements[0].pb(x); } F(i, 0, n) { string x; cin >> x; statements[1].pb(x); } map<string, int> val; F(i, 0, n) { bool in1 = (statements[0][i][0] - '0') < 10; bool in2 = (statements[1][i][0] - '0') < 10; if(!in1 && in2) swap(statements[0][i], statements[1][i]); if((in1 + in2) == 2) { if(statements[0][i][0] != statements[1][i][0]) { cout << "NE" << endl; return; } } else if((in1 + in2) == 1) { int value = stoi(statements[0][i]); if(val[statements[1][i]] == 0) { val[statements[1][i]] = value; } else if(val[statements[1][i]] != value) { cout << "NE" << endl; return; } } } vector<pair<int, pair<string, string>>> _2s; F(i, 0, n) { bool in1 = (statements[0][i][0] - '0') < 10; bool in2 = (statements[1][i][0] - '0') < 10; if((in1 + in2) == 0) { _2s.pb({-((val[statements[0][i]] != 0) + (val[statements[1][i]] != 0)), {statements[0][i], statements[1][i]}}); } } sort(_2s.begin(), _2s.end()); F(i, 0, _2s.size()) { string s1 = _2s[i].se.fi;// çıaldaldsaldasldka string s2 = _2s[i].se.se;// çıaldaldsaldasldka if(val[s1] != 0 && val[s2] == 0) val[s2] = val[s1]; if(val[s1] == 0 && val[s2] != 0) val[s1] = val[s2]; if(val[s1] != 0 && val[s2] != 0 && val[s1] != val[s2]) { cout << "NE" << endl; return; } } cout << "DA" << endl; } void setIO() { ios::sync_with_stdio(0); cin.tie(0); #ifdef Local freopen("in.txt", "r", stdin); freopen("out.txt", "w", stdout); #endif } signed main() { setIO(); int t = 1; //cin >> t; while(t--) solve(); }

Compilation message (stderr)

zamjena.cpp: In function 'void solve()':
zamjena.cpp:15:37: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 | #define F(i, s, n) for(int i = s; i < n; i++)
......
   71 |     F(i, 0, _2s.size()) {
      |       ~~~~~~~~~~~~~~~~               
zamjena.cpp:71:5: note: in expansion of macro 'F'
   71 |     F(i, 0, _2s.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...