답안 #341631

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
341631 2020-12-30T10:30:15 Z Sho10 Job Scheduling (CEOI12_jobs) C++14
100 / 100
300 ms 24300 KB
#include <bits/stdc++.h> //Andrei Alexandru a.k.a Sho10
#define ll long long
#define double long double
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define all(a) (a).begin(), (a).end()
#define f first
#define s second
#define pb push_back
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define endl '\n'
#define mod 1000000007
#define PI 3.14159265359
#define MAXN 100005
#define INF 1000000005
#define LINF 1000000000000000005ll
#define CODE_START  ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
ll n,d,m;
pair<ll,ll>a[1000005];
ll calc(ll l,ll r){
if(l==r){
        return l;
}
ll mid=(l+r)/2,pos=1;
for(ll i=1;i<=n;i++)
{
    if(pos<=m&&a[pos].f+d<i){
        return calc(mid+1,r);
    }
    for(ll j=1;j<=mid&&pos<=m&&a[pos].f<=i;j++)
    {
        pos++;
    }
}
if(pos<=m){
    return calc(mid+1,r);
}else return calc(l,mid);
}
int32_t main(){
CODE_START;
cin>>n>>d>>m;
for(ll i=1;i<=m;i++)
{
   cin>>a[i].f;
   a[i].s=i;
}
sort(a+1,a+m+1);
ll ans=calc(1,m),pos=1;
cout<<ans<<endl;
for(ll i=1;i<=n;i++)
{
    for(ll j=1;j<=ans&&pos<=m&&a[pos].f<=i;j++)
    {
        cout<<a[pos].s<<' ';
        pos++;
    }
    cout<<"0"<<endl;
}
}



# 결과 실행 시간 메모리 Grader output
1 Correct 21 ms 2944 KB Output is correct
2 Correct 26 ms 2796 KB Output is correct
3 Correct 22 ms 2796 KB Output is correct
4 Correct 21 ms 2796 KB Output is correct
5 Correct 21 ms 2796 KB Output is correct
6 Correct 21 ms 2796 KB Output is correct
7 Correct 21 ms 2796 KB Output is correct
8 Correct 27 ms 2796 KB Output is correct
9 Correct 36 ms 2924 KB Output is correct
10 Correct 37 ms 2924 KB Output is correct
11 Correct 30 ms 2924 KB Output is correct
12 Correct 61 ms 5612 KB Output is correct
13 Correct 92 ms 8172 KB Output is correct
14 Correct 130 ms 11244 KB Output is correct
15 Correct 158 ms 13548 KB Output is correct
16 Correct 197 ms 16896 KB Output is correct
17 Correct 229 ms 19452 KB Output is correct
18 Correct 261 ms 21484 KB Output is correct
19 Correct 300 ms 24300 KB Output is correct
20 Correct 254 ms 19544 KB Output is correct