Submission #580938

#TimeUsernameProblemLanguageResultExecution timeMemory
580938Koosha_mvToy Train (IOI17_train)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define dbgv(v) cout<<#v<<" = "; f(i,0,v.size()) cout<<v[i]<<" "; cout<<endl #define dbga(a,x,y) cout<<#a<<" = "; f(i,x,y) cout<<a[i]<<" "; cout<<endl #define erorp(x) cout<<#x<<"={"<<x.F<<" , "<<x.S<<"}"<<endl #define eror(x) cout<<#x<<'='<<(x)<<endl #define f_(i,a,b) for(int i=a;i>=b;i--) #define f(i,a,b) for(int i=a;i<b;i++) #define nb(x) __builtin_popcount(x) #define all(v) v.begin(),v.end() #define bit(n,k) (((n)>>(k))&1) #define Add(x,y) x=(x+y)%mod #define maxm(a,b) a=max(a,b) #define minm(a,b) a=min(a,b) #define lst(x) x[x.size()-1] #define sz(x) int(x.size()) #define mp make_pair #define ll long long #define pb push_back #define S second #define F first //#include "train.h" const int N=5050; int n,A[N],B[N],dp[N],pd[N]; vector<int> g[N]; void solve0(){ f(t,0,n){ f(u,0,n){ int And=1,Or=0; for(auto v : g[u]){ Or|=dp[v]; And&=dp[v]; } pd[u]=(dp[u] && ((A[u]==0 && Or) || (A[u]==1 && And))); } f(u,0,n) dp[u]=pd[u]; } } void solve1(){ //dbga(dp,0,n); f(t,0,n){ f(u,0,n){ int And=1,Or=0; for(auto v : g[u]){ Or|=dp[v]; And&=dp[v]; } pd[u]=(dp[u] || ((A[u]==0 && Or) || (A[u]==1 && And))); } f(u,0,n) dp[u]=pd[u]; } } vector<int> who_wins(vector<int> a,vector<int> r,vector<int> u,vector<int> v){ f(i,0,u.size()) g[u[i]].pb(v[i]); n=a.size(); f(i,0,n) A[i]=a[i],B[i]=r[i],dp[i]=B[i]^1; solve0(); solve1(); vector<int> ans(n); f(i,0,n) ans[i]=dp[i]^1; //dbgv(ans); return ans; } int32_t main(){ ios:: sync_with_stdio(0), cin.tie(0), cout.tie(0); who_wins({1,1},{1,0},{0,0,1,1},{0,1,0,1}); }

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:8:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    8 | #define f(i,a,b) for(int i=a;i<b;i++)
......
   57 |  f(i,0,u.size()) g[u[i]].pb(v[i]);
      |    ~~~~~~~~~~~~                
train.cpp:57:2: note: in expansion of macro 'f'
   57 |  f(i,0,u.size()) g[u[i]].pb(v[i]);
      |  ^
/usr/bin/ld: /tmp/cc4ykLeH.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cc2ocguI.o:train.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status