Submission #1271404

#TimeUsernameProblemLanguageResultExecution timeMemory
1271404vtnooTeams (IOI15_teams)C++20
0 / 100
4094 ms10488 KiB
#ifndef teams_h #define teams_h #include <bits/stdc++.h> using namespace std; const int MAXN=500000; int N, A[MAXN], B[MAXN]; void init(int n, int a[], int b[]) { N=n; for(int i=0;i<N;i++){ A[i]=a[i]; B[i]=b[i]; } } int can(int M, int K[]) { vector<int> v(N); for(int i=0;i<N;i++){ v[i]=i; } sort(v.begin(), v.end(), [&](int f, int s){ if(A[f]==A[s]){ return B[f]<B[s]; } return A[f]<A[s]; }); sort(K, K+M); int j=0, listo=0; for(int i=0;i<M;i++){ int student=v[j], cnt=0; /* cout<<"=================="<<endl; cout<<student<<endl; */ while(cnt<K[i]&&j<N&&A[student]<=K[i]&&K[i]<=B[student]){ cnt++; j++; if(j<N) student=v[j]; } /* cout<<i<<" "<<cnt<<endl; */ if(cnt==K[i]){ listo++; } } return listo==M; } #endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...