Submission #875311

# Submission time Handle Problem Language Result Execution time Memory
875311 2023-11-19T04:57:08 Z PM1 Job Scheduling (CEOI12_jobs) C++17
100 / 100
394 ms 16724 KB
#include <bits/stdc++.h>
using namespace std;
#define fr first
#define sc second
const int mxn=1e6+5;
int n,m,d;
pair<int,int>a[mxn];
int main(){
	cin>>n>>d>>m;
	for(int i=1;i<=m;i++){
		cin>>a[i].fr;
		a[i].sc=i;
	}
	a[m+1].fr=1e9;
	sort(a+1,a+m+1);
	int l=0,r=m;
	while(r-l>1){
		//cout<<r<<" "<<l<<endl;
		int mid=(l+r)/2,p=1;
		for(int i=1;i<=n;i++){
			if(a[p].fr+d<i){
				break;
			}
			int cnt=0;
			while(cnt<mid && a[p].fr<=i){
				cnt++;
				p++;
			}
		}
		if(p>m){
			r=mid;
		}
		else{
			l=mid;
		}
	}
	cout<<r<<endl;
	int p=1;
	for(int i=1;i<=n;i++){
		int cnt=0;
		while(cnt<r && a[p].fr<=i){
			cnt++;
			cout<<a[p].sc<<" ";
			p++;
		}
		cout<<0<<endl;
	}
}
# Verdict Execution time Memory Grader output
1 Correct 33 ms 3156 KB Output is correct
2 Correct 32 ms 3208 KB Output is correct
3 Correct 32 ms 3164 KB Output is correct
4 Correct 32 ms 3164 KB Output is correct
5 Correct 32 ms 3164 KB Output is correct
6 Correct 32 ms 3156 KB Output is correct
7 Correct 33 ms 3156 KB Output is correct
8 Correct 33 ms 3164 KB Output is correct
9 Correct 139 ms 3660 KB Output is correct
10 Correct 138 ms 3572 KB Output is correct
11 Correct 30 ms 3164 KB Output is correct
12 Correct 67 ms 3940 KB Output is correct
13 Correct 91 ms 6484 KB Output is correct
14 Correct 145 ms 9044 KB Output is correct
15 Correct 152 ms 8300 KB Output is correct
16 Correct 215 ms 13368 KB Output is correct
17 Correct 245 ms 14420 KB Output is correct
18 Correct 259 ms 14808 KB Output is correct
19 Correct 394 ms 16724 KB Output is correct
20 Correct 245 ms 14256 KB Output is correct