Submission #981535

#TimeUsernameProblemLanguageResultExecution timeMemory
981535SmuggingSpunJob Scheduling (CEOI12_jobs)C++14
0 / 100
60 ms11240 KiB
#include<bits/stdc++.h> #define taskname "jobs" using namespace std; const int lim = 1e5 + 5; vector<int>p[lim]; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); if(fopen(taskname".inp", "r")){ freopen(taskname".inp", "r", stdin); } int n, d, m; cin >> n >> d >> m; for(int i = 0; i < m; ){ int x; cin >> x; p[x].emplace_back(++i); } int low = 1, high = n, ans; while(low <= high){ int mid = (low + high) >> 1; deque<pair<int, int>>D; for(int i = 1; i <= n; i++){ int current = mid; if(!p[i].empty() > 0){ D.emplace_back(i, p[i].size()); } if(!D.empty() && D.front().first + d < i){ break; } while(!D.empty()){ auto [x, y] = D.front(); D.pop_front(); if(current >= y){ current -= y; } else{ D.emplace_front(x, y - current); break; } } } if(!D.empty()){ low = mid + 1; } else{ high = (ans = mid) - 1; } } cout << ans << "\n"; }

Compilation message (stderr)

jobs.cpp: In function 'int main()':
jobs.cpp:31:10: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   31 |     auto [x, y] = D.front();
      |          ^
jobs.cpp:9:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    9 |   freopen(taskname".inp", "r", stdin);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
jobs.cpp:49:17: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
   49 |  cout << ans << "\n";
      |                 ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...