3211 | 2023. 02. 22 16:16:25 | TuruTamas | Ügyfélszolgálat (45) | cpp17 | Hibás válasz 13/45 | 128ms | 6440 KiB |
#include <bits/stdc++.h>
using namespace std;
#define pii pair<int, int>
struct comp {
bool operator()(pii a, pii b) {
if (a.first < b.first) return false;
if (b.first < a.first) return true;
if (a.second < b.second) return false;
if (b.second < a.second) return true;
return false;
}
};
int lines_read = 0;
int N, M;
vector<int> pultok;
queue<pii> q2;
pii next() {
if (q2.empty()) {
pii r;
cin >> r.first >> r.second;
lines_read++;
return r;
}
pii r = q2.front();
q2.pop();
return r;
}
int count(int t) {
if (lines_read == N) return q2.size();
pii x;
cin >> x.first >> x.second;
lines_read++;
q2.push(x);
while (x.first < t && lines_read < N)
{
cin >> x.first >> x.second;
lines_read++;
q2.push(x);
}
return q2.size();
}
int main() {
cin >> M >> N;
priority_queue<pii, vector<pii>, comp> q ;
for (size_t i = 1; i < M+1; i++)
{
q.push({0, i});
}
int E, H;
int maxvarido = 0;
int maxvarakozo = 0;
for (size_t i = 0; i < N; i++)
{
// cout << i << endl;
pii temp = next();
E = temp.first;
H = temp.second;
q.push( { max(q.top().first, E) + H, q.top().second } );
maxvarido = max( maxvarido, q.top().first - E );
if (E < q.top().first) {
maxvarakozo = max(count(q.top().first), maxvarakozo);
}
pultok.push_back(q.top().second);
q.pop();
}
while (q.size() > 1) q.pop();
cout << q.top().first << " " << maxvarido << " " << maxvarakozo << "\n";
for (int& x : pultok) cout << x << "\n";
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 13/45 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1680 KiB | |||
2 | Hibás válasz | 0/0 | 56ms | 2920 KiB | |||
3 | Részben helyes | 1/2 | 3ms | 1948 KiB | |||
4 | Hibás válasz | 0/2 | 3ms | 2092 KiB | |||
5 | Hibás válasz | 0/2 | 3ms | 2308 KiB | |||
6 | Részben helyes | 1/2 | 3ms | 2500 KiB | |||
7 | Részben helyes | 1/2 | 3ms | 2716 KiB | |||
8 | Részben helyes | 1/2 | 86ms | 4944 KiB | |||
9 | Hibás válasz | 0/2 | 81ms | 6208 KiB | |||
10 | Részben helyes | 1/2 | 101ms | 5360 KiB | |||
11 | Részben helyes | 1/2 | 81ms | 5556 KiB | |||
12 | Hibás válasz | 0/2 | 81ms | 5508 KiB | |||
13 | Hibás válasz | 0/2 | 97ms | 6292 KiB | |||
14 | Részben helyes | 1/2 | 86ms | 5500 KiB | |||
15 | Hibás válasz | 0/2 | 90ms | 6148 KiB | |||
16 | Hibás válasz | 0/2 | 85ms | 6288 KiB | |||
17 | Hibás válasz | 0/2 | 93ms | 6284 KiB | |||
18 | Hibás válasz | 0/2 | 90ms | 6440 KiB | |||
19 | Részben helyes | 1/2 | 128ms | 5788 KiB | |||
20 | Részben helyes | 1/3 | 128ms | 5900 KiB | |||
21 | Részben helyes | 2/4 | 101ms | 5852 KiB | |||
22 | Részben helyes | 2/4 | 108ms | 5860 KiB |