10207 | 2024. 03. 29 13:47:35 | Vargus | A lehető legkevesebb átszállás (50 pont) | cpp17 | Hibás válasz 6/50 | 8ms | 5128 KiB |
#include <iostream>
#include <queue>
#include <algorithm>
#define ll long long
using namespace std;
int main()
{
ll n, m;
cin >> n >> m;
vector <ll> a(n + 1), b(n + 1);
for (ll i = 1; i <= n; ++i)
{
cin >> a[i] >> b[i];
}
if (a[1] != 1)
{
cout << "-1";
return 0;
}
ll j = 1;
deque <ll> res(1), poz;
res[0] = 0;
ll maxi = 1, db;
b[0] = 999999;
for (ll i = 1; i <= m; ++i)
{
db = 0;
if (maxi > b[j])
{
++j;
continue;
}
if (maxi == b[j])
{
if (j < n)
++j;
continue;
}
while (a[j] == i && maxi <= b[j] && maxi >= a[j])
{
++db;
poz.push_front(j);
res.push_front(b[j]);
if (res.front() <= b[j])
{
if (maxi < b[j])
maxi = b[j];
}
if (maxi > b[j - 1] && db > 1)
{
poz.erase(poz.begin() + j - 1);
res.erase(res.begin() + j - 1);
}
++j;
if (j > n)
break;
}
if (j > n)
break;
}
if (res.front() == m)
{
cout << poz.size() - 1 << endl;
for (ll i = poz.size() - 1; i >= 0; --i)
{
cout << poz[i] << " ";
}
}
else
cout << "-1";
return 0;
}
/*
6 9
1 4
1 6
2 6
3 4
6 9
7 9
*/
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 6/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1812 KiB | |||
2 | Hibás válasz | 0/0 | 8ms | 2344 KiB | |||
3 | Elfogadva | 1/1 | 3ms | 2264 KiB | |||
4 | Elfogadva | 1/1 | 3ms | 2484 KiB | |||
5 | Elfogadva | 2/2 | 2ms | 2592 KiB | |||
6 | Elfogadva | 2/2 | 3ms | 2540 KiB | |||
7 | Futási hiba | 0/2 | 3ms | 2592 KiB | |||
8 | Futási hiba | 0/2 | 4ms | 2856 KiB | |||
9 | Hibás válasz | 0/2 | 4ms | 3032 KiB | |||
10 | Hibás válasz | 0/2 | 4ms | 3392 KiB | |||
11 | Hibás válasz | 0/2 | 4ms | 3624 KiB | |||
12 | Futási hiba | 0/2 | 6ms | 4000 KiB | |||
13 | Futási hiba | 0/2 | 3ms | 4016 KiB | |||
14 | Hibás válasz | 0/2 | 4ms | 4136 KiB | |||
15 | Hibás válasz | 0/2 | 4ms | 4140 KiB | |||
16 | Hibás válasz | 0/2 | 6ms | 4428 KiB | |||
17 | Futási hiba | 0/2 | 7ms | 4592 KiB | |||
18 | Hibás válasz | 0/2 | 8ms | 4596 KiB | |||
19 | Futási hiba | 0/2 | 8ms | 4544 KiB | |||
20 | Hibás válasz | 0/2 | 8ms | 4572 KiB | |||
21 | Hibás válasz | 0/2 | 8ms | 4740 KiB | |||
22 | Hibás válasz | 0/2 | 8ms | 4828 KiB | |||
23 | Hibás válasz | 0/2 | 8ms | 4804 KiB | |||
24 | Hibás válasz | 0/2 | 8ms | 4804 KiB | |||
25 | Hibás válasz | 0/2 | 8ms | 4804 KiB | |||
26 | Hibás válasz | 0/2 | 8ms | 4804 KiB | |||
27 | Hibás válasz | 0/2 | 8ms | 4888 KiB | |||
28 | Hibás válasz | 0/2 | 8ms | 5128 KiB |