#include <string>
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <cmath>
#include <array>
#include <map>
#include <set>
#include <fstream>
#include <unordered_map>
#include <queue>
using namespace std;
using pi = pair<int, int>;
using pd = pair<double, double>;
#define ll long long
#define all(x) (x).begin(), (x).end()
ll days, delay, requests;
vector<pair<ll,ll>> seq;
bool works(ll machines) {
if(days*machines < requests) {
return false;
}
ll cur_day = 0; ll cur_req = 0;
while(cur_day < days && cur_req < requests) {
for(ll j = 0; j < machines; j++) {
if(cur_req == requests) {
break;
}
if(seq[cur_req].first <= cur_day+1) {
if(cur_day+1 - seq[cur_req].first <= delay) {
cur_req++;
}
else {
return false;
}
}
else {
j = machines;
}
}
cur_day++;
}
return cur_req == requests;
}
bool p_works(ll machines) {
if(days*machines < requests) {
return false;
}
ll cur_day = 0; ll cur_req = 0;
while(cur_day < days && cur_req < requests) {
for(ll j = 0; j < machines; j++) {
if(cur_req == requests) {
break;
}
if(seq[cur_req].first <= cur_day+1) {
if(cur_day+1 - seq[cur_req].first <= delay) {
cout << seq[cur_req].second << " ";
cur_req++;
}
else {
return false;
}
}
else {
j = machines;
}
}
cout << 0 << endl;
cur_day++;
}
return cur_req == requests;
}
int main() {
cin >> days >> delay >> requests;
for(ll i = 0; i < requests; i++) {
ll day; cin >> day;
seq.push_back({day, i+1});
}
sort(all(seq));
ll a = 1, b = 1e9;
ll ans;
while(a <= b) {
ll mid = (a+b)/2;
// cout << a << " " << b << endl;
if(works(mid)) {
ans = mid;
b = mid-1;
}
else {
a = mid+1;
}
}
cout << ans << endl;
p_works(ans);
}
Compilation message
jobs.cpp: In function 'int main()':
jobs.cpp:96:12: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
96 | p_works(ans);
| ~~~~~~~^~~~~
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
46 ms |
2736 KB |
Unexpected end of file - int32 expected |
2 |
Incorrect |
39 ms |
2524 KB |
Unexpected end of file - int32 expected |
3 |
Incorrect |
40 ms |
2492 KB |
Unexpected end of file - int32 expected |
4 |
Incorrect |
40 ms |
2564 KB |
Unexpected end of file - int32 expected |
5 |
Incorrect |
54 ms |
2556 KB |
Unexpected end of file - int32 expected |
6 |
Incorrect |
40 ms |
2508 KB |
Unexpected end of file - int32 expected |
7 |
Incorrect |
40 ms |
2448 KB |
Unexpected end of file - int32 expected |
8 |
Incorrect |
40 ms |
2560 KB |
Unexpected end of file - int32 expected |
9 |
Incorrect |
46 ms |
2480 KB |
Unexpected end of file - int32 expected |
10 |
Incorrect |
46 ms |
2496 KB |
Unexpected end of file - int32 expected |
11 |
Incorrect |
51 ms |
2508 KB |
Unexpected end of file - int32 expected |
12 |
Correct |
102 ms |
4784 KB |
Output is correct |
13 |
Incorrect |
183 ms |
8616 KB |
Unexpected end of file - int32 expected |
14 |
Correct |
245 ms |
9316 KB |
Output is correct |
15 |
Correct |
261 ms |
11676 KB |
Output is correct |
16 |
Incorrect |
352 ms |
16784 KB |
Unexpected end of file - int32 expected |
17 |
Incorrect |
418 ms |
16924 KB |
Unexpected end of file - int32 expected |
18 |
Incorrect |
427 ms |
18488 KB |
Unexpected end of file - int32 expected |
19 |
Incorrect |
472 ms |
20648 KB |
Unexpected end of file - int32 expected |
20 |
Incorrect |
419 ms |
16716 KB |
Unexpected end of file - int32 expected |