Submission #371289

#TimeUsernameProblemLanguageResultExecution timeMemory
371289KoDToy Train (IOI17_train)C++17
0 / 100
2092 ms876 KiB
#include <bits/stdc++.h> #include "train.h" template <class T> using Vec = std::vector<T>; Vec<int> who_wins(Vec<int> a, Vec<int> r, Vec<int> u, Vec<int> v) { const int n = (int) a.size(); const int m = (int) u.size(); { bool sub1 = true; Vec<bool> loop(n); Vec<bool> right(n); for (int i = 0; i < m; ++i) { if (u[i] != v[i]) { loop[u[i]] = true; } else if (u[i] + 1 == v[i]) { right[u[i]] = true; } else { sub1 = false; break; } } if (sub1) { Vec<int> ret(n); for (int i = n - 1; i >= 0; --i) { if (a[i]) { ret[i] = 0; if (r[i] && loop[i]) { ret[i] = 1; } if (right[i] && ret[i + 1]) { ret[i] = 1; } } else { ret[i] = 1; if (!r[i] && loop[i]) { ret[i] = 0; } if (right[i] && !ret[i + 1]) { ret[i] = 0; } } } return ret; } } }

Compilation message (stderr)

train.cpp: In function 'Vec<int> who_wins(Vec<int>, Vec<int>, Vec<int>, Vec<int>)':
train.cpp:52:1: warning: control reaches end of non-void function [-Wreturn-type]
   52 | }
      | ^
#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...