Submission #617648

#TimeUsernameProblemLanguageResultExecution timeMemory
617648Sergio_2357Toy Train (IOI17_train)C++17
0 / 100
9 ms1108 KiB
#include "train.h" #include <bits/stdc++.h> using namespace std; #define int long long typedef vector<int> vi; vector<signed> who_wins(vector<signed> a, vector<signed> r, vector<signed> u, vector<signed> v) { vector<signed> res(a.size(), 0); vi ws, ls; set<int> brk; for (int i = 0; i < a.size(); i++) brk.insert(i); for (int i = 0; i < u.size(); i++) { if (u[i] == v[i]) { if (r[u[i]] && a[u[i]]) ws.push_back(u[i]); if (!r[u[i]] && !a[u[i]]) ls.push_back(u[i]); } else { brk.erase(u[i]); } } sort(ws.begin(), ws.end()); sort(ls.begin(), ls.end()); for (int i = 0; i < a.size(); i++) { auto wit = lower_bound(ws.begin(), ws.end(), i); auto lit = lower_bound(ls.begin(), ls.end(), i); auto l2it = brk.lower_bound(i); int nw = (wit != ws.end() ? *wit : INT_MAX); int nl = (lit != ls.end() ? *lit : INT_MAX); int nl2 = (l2it != brk.end() ? *l2it : INT_MAX); if (nw < nl && nw <= nl2) res[i] = 1; } return res; }

Compilation message (stderr)

train.cpp: In function 'std::vector<int> who_wins(std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>)':
train.cpp:15:23: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 |     for (int i = 0; i < a.size(); i++)
      |                     ~~^~~~~~~~~~
train.cpp:17:23: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for (int i = 0; i < u.size(); i++) {
      |                     ~~^~~~~~~~~~
train.cpp:29:23: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |     for (int i = 0; i < a.size(); i++) {
      |                     ~~^~~~~~~~~~
#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...