Submission #295972

#TimeUsernameProblemLanguageResultExecution timeMemory
295972Muhammetali장난감 기차 (IOI17_train)C++11
0 / 100
14 ms3712 KiB
#include "train.h" #include <bits/stdc++.h> #define mp make_pair #define f first #define s second #define sz(x) (int)(x).size() #define rsz resize #define ins insert #define ft front() #define bk back() #define pf push_front #define pb push_back #define eb emplace_back #define lb lower_bound #define ub upper_bound using namespace std; typedef long long ll; typedef long double ld; typedef pair<int,int> pi; typedef pair<ll,ll> pl; typedef vector<int> vi; typedef vector<bool> vb; typedef vector<ll> vl; typedef vector<pi> vpi; typedef vector<pl> vpl; std::vector<int> who_wins(std::vector<int> a, std::vector<int> r, std::vector<int> u, std::vector<int> v) { vi res; deque<ll>g,gg; set<ll>s[6000]; for (int i=0;i<sz(u);i++)s[u[i]].ins(v[i]);; for (int i=0;i<sz(a);i++) { if (s[i].count(i)==1) { if (a[i]==0 && r[i]==0) g.pb(i); if (r[i]==1) { if (a[i]==1)gg.pb(i); if (s[i].size()==1)gg.pb(i); } } } for (int i=0;i<sz(a);i++) { while(i>g.front())g.pop_front(); while(i>gg.front())gg.pop_front(); if (g.front()<gg.front())res.pb(0); else res.pb(1); } return res; }
#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...