Submission #624854

#TimeUsernameProblemLanguageResultExecution timeMemory
624854cacteyyJob Scheduling (CEOI12_jobs)C++17
0 / 100
1093 ms3812 KiB
#include <iostream> #include <algorithm> using namespace std; int n, m; int* times; int checkSum(int k) { int out = 0; int i = 0; while (i < m) { out++; out = ((out > times[i]) ? out : times[i]); for (int j = 0; j < k && i + j < m; i++, j++) { if (times[i] > out) { i--; j--; break; } } } return out; } int main() { int k; int d; cin >> n >> d>>m; times = new int[m] {0}; for (int i = 0; i < m; i++) { cin >> times[i]; } sort(times, times + (m - 1)); int lk = 1; int mk = m; int mid = (mk - lk) / 2 + lk; while (lk < mk) { mid = (mk - lk) / 2 + lk; if (checkSum(mid) >= n + d) lk = mid + 1; else mk = mid - 1; } int out = lk; if (mk < lk && checkSum(mk) <= n + d) out = mk; cout << out; }

Compilation message (stderr)

jobs.cpp: In function 'int main()':
jobs.cpp:28:6: warning: unused variable 'k' [-Wunused-variable]
   28 |  int k;
      |      ^
#Verdict Execution timeMemoryGrader output
Fetching results...