5711 | 2023. 09. 09 18:36:30 | TomaSajt | A lehető legkevesebb átszállás (50 pont) | cpp17 | Elfogadva 50/50 | 4ms | 4652 KiB |
#include <bits/stdc++.h>
using namespace std;
struct line {
int s, e;
};
int main() {
cin.tie(0), ios::sync_with_stdio(0);
int n, m;
cin >> n >> m;
vector<line> lines(n);
for (auto& [s, e] : lines) cin >> s >> e;
int pos = 1, i = 0;
vector<int> sol;
while (pos < m && i < n) {
int bestI = -1;
while (i < n && lines[i].s <= pos) {
if (bestI == -1 || lines[i].e > lines[bestI].e) bestI = i;
i++;
}
if (bestI == -1) break;
pos = lines[bestI].e;
sol.push_back(bestI);
}
if (pos < m) {
cout << "-1";
return 0;
}
cout << sol.size() - 1 << '\n';
for (int j : sol) cout << j + 1 << ' ';
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1824 KiB | |||
2 | Elfogadva | 0/0 | 4ms | 2292 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2244 KiB | |||
4 | Elfogadva | 1/1 | 2ms | 2472 KiB | |||
5 | Elfogadva | 2/2 | 2ms | 2684 KiB | |||
6 | Elfogadva | 2/2 | 2ms | 2892 KiB | |||
7 | Elfogadva | 2/2 | 3ms | 3120 KiB | |||
8 | Elfogadva | 2/2 | 3ms | 3336 KiB | |||
9 | Elfogadva | 2/2 | 3ms | 3680 KiB | |||
10 | Elfogadva | 2/2 | 3ms | 3752 KiB | |||
11 | Elfogadva | 2/2 | 3ms | 3972 KiB | |||
12 | Elfogadva | 2/2 | 3ms | 3916 KiB | |||
13 | Elfogadva | 2/2 | 3ms | 4016 KiB | |||
14 | Elfogadva | 2/2 | 3ms | 4104 KiB | |||
15 | Elfogadva | 2/2 | 3ms | 4116 KiB | |||
16 | Elfogadva | 2/2 | 3ms | 4028 KiB | |||
17 | Elfogadva | 2/2 | 4ms | 4296 KiB | |||
18 | Elfogadva | 2/2 | 4ms | 4264 KiB | |||
19 | Elfogadva | 2/2 | 4ms | 4524 KiB | |||
20 | Elfogadva | 2/2 | 4ms | 4480 KiB | |||
21 | Elfogadva | 2/2 | 4ms | 4512 KiB | |||
22 | Elfogadva | 2/2 | 4ms | 4500 KiB | |||
23 | Elfogadva | 2/2 | 4ms | 4496 KiB | |||
24 | Elfogadva | 2/2 | 4ms | 4500 KiB | |||
25 | Elfogadva | 2/2 | 4ms | 4628 KiB | |||
26 | Elfogadva | 2/2 | 4ms | 4652 KiB | |||
27 | Elfogadva | 2/2 | 4ms | 4632 KiB | |||
28 | Elfogadva | 2/2 | 4ms | 4648 KiB |