Submission #744009

# Submission time Handle Problem Language Result Execution time Memory
744009 2023-05-18T07:10:02 Z vjudge1 Job Scheduling (CEOI12_jobs) C++17
55 / 100
42 ms 15180 KB
#include<bits/stdc++.h>

using namespace std;

using ll = long long ;
using pii = pair<ll , ll> ;
using i3 = tuple<ll , ll , ll> ;

const int N = 1e5+5 ;
const int MOD = 1e9+7 ;

ll n , d , m ;
pii S[N] ;

vector<ll> ans2[N] ;

bool solve(ll mid){

    ll day = 1 , cnt = 0 ;
    for(int i=1;i<=m;i++){
        if(day < S[i].first) day = S[i].first ;
        if(day <= S[i].first + d){ // do job i-th
            cnt++ ;
            ans2[day].push_back(S[i].second) ;
        }
        else {
            return false ;
        }
        if(cnt == mid){
            day++;
            cnt = 0 ;
        }
    }

    if(cnt == 0) day--;

    return day <= n ;
}

int main(){
    ios_base::sync_with_stdio(0); cin.tie(0);

    cin >> n >> d >> m ;
    for(int i=1, x;i<=m;i++){
        cin >> x ;
        S[i] = {x , i};
    }

    sort(S+1 , S+m+1) ;

    ll l = 1 , r = m , ans = 0 ;

    while(l <= r){
        ll mid = (l+r)/2 ;

        if(solve(mid)){
            r = mid-1 ;
            ans = mid ;
        }
        else {
            l = mid+1 ;
            for(int i=1;i<=n;i++) ans2[i].clear();
        }
    }

    cout << ans << "\n" ;
    for(int i=1;i<=n;i++){
        cout << "0\n" ;
    }
}

# Verdict Execution time Memory Grader output
1 Correct 22 ms 6228 KB Output is correct
2 Correct 23 ms 6260 KB Output is correct
3 Correct 20 ms 6212 KB Output is correct
4 Correct 22 ms 6148 KB Output is correct
5 Correct 22 ms 6180 KB Output is correct
6 Correct 20 ms 6228 KB Output is correct
7 Correct 22 ms 6228 KB Output is correct
8 Correct 23 ms 6172 KB Output is correct
9 Correct 35 ms 9632 KB Output is correct
10 Correct 33 ms 9080 KB Output is correct
11 Correct 42 ms 15180 KB Output is correct
12 Incorrect 10 ms 4428 KB Output isn't correct
13 Incorrect 10 ms 4364 KB Output isn't correct
14 Incorrect 11 ms 4708 KB Output isn't correct
15 Incorrect 12 ms 4564 KB Output isn't correct
16 Incorrect 14 ms 5316 KB Output isn't correct
17 Incorrect 12 ms 4748 KB Output isn't correct
18 Incorrect 10 ms 4436 KB Output isn't correct
19 Incorrect 10 ms 4516 KB Output isn't correct
20 Incorrect 11 ms 4700 KB Output isn't correct