#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 && cur_day <= days;
}
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 && cur_day <= days;
}
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 |
40 ms |
2516 KB |
Unexpected end of file - int32 expected |
2 |
Incorrect |
40 ms |
2484 KB |
Unexpected end of file - int32 expected |
3 |
Incorrect |
40 ms |
2556 KB |
Unexpected end of file - int32 expected |
4 |
Incorrect |
41 ms |
2600 KB |
Unexpected end of file - int32 expected |
5 |
Incorrect |
50 ms |
2508 KB |
Unexpected end of file - int32 expected |
6 |
Incorrect |
40 ms |
2504 KB |
Unexpected end of file - int32 expected |
7 |
Incorrect |
40 ms |
2484 KB |
Unexpected end of file - int32 expected |
8 |
Incorrect |
40 ms |
2512 KB |
Unexpected end of file - int32 expected |
9 |
Incorrect |
57 ms |
2484 KB |
Unexpected end of file - int32 expected |
10 |
Incorrect |
47 ms |
2452 KB |
Unexpected end of file - int32 expected |
11 |
Incorrect |
52 ms |
2504 KB |
Unexpected end of file - int32 expected |
12 |
Correct |
101 ms |
4836 KB |
Output is correct |
13 |
Incorrect |
157 ms |
8616 KB |
Unexpected end of file - int32 expected |
14 |
Correct |
248 ms |
9376 KB |
Output is correct |
15 |
Correct |
257 ms |
11548 KB |
Output is correct |
16 |
Incorrect |
362 ms |
16860 KB |
Unexpected end of file - int32 expected |
17 |
Incorrect |
418 ms |
16792 KB |
Unexpected end of file - int32 expected |
18 |
Incorrect |
418 ms |
18412 KB |
Unexpected end of file - int32 expected |
19 |
Incorrect |
477 ms |
20668 KB |
Unexpected end of file - int32 expected |
20 |
Incorrect |
412 ms |
16732 KB |
Unexpected end of file - int32 expected |