Submission #157713

#TimeUsernameProblemLanguageResultExecution timeMemory
157713a_playerJob Scheduling (CEOI12_jobs)C++14
60 / 100
824 ms10360 KiB
#include <bits/stdc++.h> using namespace std; int N,M,D; int s[1000001]; bool check(int T){ if(T>=M)return true; if(T==0)return false; int j=0; for(int i=0;i<M;i++){ if(i%T==0)j++; j=max(j,s[i]); if(s[i]+D<j)return false; } return true; } int main(){ cin>>N>>D>>M; for(int i=0;i<M;i++)cin>>s[i]; sort(s,s+M); int x=-1; for(int b=M;b>=1;b/=2) while(!check(x+b))x+=b; cout<<x+1<<endl; for(int i=0;i<N;i++){ for(int z=i*(x+1);z<M&&z<(i+1)*(x+1);z++)cout<<z+1<<" "; cout<<0<<endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...