제출 #938080

#제출 시각아이디문제언어결과실행 시간메모리
938080TAhmed33Job Scheduling (CEOI12_jobs)C++98
0 / 100
204 ms4496 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN = 1e6 + 25; int n, d, m; int a[MAXN]; bool check (int x) { bool flag = 1; int ptr = 1; for (int day = 1; day <= n; day++) { int cnt = 0; while (ptr <= m && a[ptr] >= day && cnt + 1 <= x) { flag &= day <= a[ptr] + d; ptr++; cnt++; } } flag &= ptr == m + 1; return flag; } void cringe () { for (int i = 1; i <= n; i++) cout << 0 << endl; } int main () { ios::sync_with_stdio(0); cin.tie(0); //freopen("rand", "r", stdin); cin >> n >> d >> m; for (int i = 1; i <= m; i++) cin >> a[i]; sort(a + 1, a + m + 1); int l = 1, r = m - 1, ans = m; while (l <= r) { int mid = (l + r) >> 1; if (check(mid)) { r = mid - 1; ans = mid; } else { l = mid + 1; } } cout << ans << '\n'; cringe(); }
#Verdict Execution timeMemoryGrader output
Fetching results...