2860 | 2023-01-30 15:42:22 | kdb | Videójáték | cpp11 | Elfogadva 100/100 | 61ms | 14096 KiB |
#include <iostream>
#include <vector>
#include <climits>
#define ll long long
using namespace std;
const int VEGE = INT_MIN;
int main()
{
cin.tie(nullptr);
cout.tie(nullptr);
ios_base::sync_with_stdio(false);
int T, n, m;
cin >> T >> n;
vector<ll>tied;
for (size_t i = 0; i < n; i++)
{
int a, b;
cin >> a >> b;
tied.push_back(a);
tied.push_back(-b - 1);
}
tied.push_back(VEGE);
cin >> m;
vector<ll>hanoe;
for (size_t i = 0; i < m; i++)
{
int a, b;
cin >> a >> b;
hanoe.push_back(a);
hanoe.push_back(-b - 1);
}
hanoe.push_back(VEGE);
int teHely = 0, hanoHely = 0, unatkozasKezdet = 0, egyuttKezdet = 0, perc = 0;
bool teJatszol = false, hanoJatszik = false;
while (!(tied[teHely] == VEGE and hanoe[hanoHely] == VEGE))
{
if (abs(tied[teHely]) < abs(hanoe[hanoHely]))
{
if (tied[teHely] >= 0)
{
if (hanoJatszik) egyuttKezdet = tied[teHely];
else unatkozasKezdet = tied[teHely];
teJatszol = true;
}
else
{
if (teJatszol && hanoJatszik) perc += -tied[teHely] - egyuttKezdet;
teJatszol = false;
}
teHely += 1;
}
else
{
if (teJatszol && !hanoJatszik && unatkozasKezdet + T < abs(hanoe[hanoHely])) teJatszol = false;
if (hanoe[hanoHely] >= 0)
{
if (teJatszol) egyuttKezdet = hanoe[hanoHely];
hanoJatszik = true;
}
else
{
if (teJatszol && hanoJatszik) perc += -hanoe[hanoHely] - egyuttKezdet;
if (teJatszol) unatkozasKezdet = -hanoe[hanoHely];
hanoJatszik = false;
}
hanoHely += 1;
}
}
cout << perc << endl;
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1824 KiB | ||||
2 | Elfogadva | 2ms | 2020 KiB | ||||
subtask2 | 10/10 | ||||||
3 | Elfogadva | 2ms | 2248 KiB | ||||
4 | Elfogadva | 2ms | 2444 KiB | ||||
5 | Elfogadva | 2ms | 2676 KiB | ||||
6 | Elfogadva | 2ms | 2780 KiB | ||||
7 | Elfogadva | 2ms | 2824 KiB | ||||
8 | Elfogadva | 2ms | 2808 KiB | ||||
9 | Elfogadva | 2ms | 2904 KiB | ||||
10 | Elfogadva | 2ms | 2908 KiB | ||||
11 | Elfogadva | 2ms | 2908 KiB | ||||
subtask3 | 20/20 | ||||||
12 | Elfogadva | 2ms | 3136 KiB | ||||
13 | Elfogadva | 2ms | 3336 KiB | ||||
14 | Elfogadva | 2ms | 3476 KiB | ||||
15 | Elfogadva | 2ms | 3472 KiB | ||||
16 | Elfogadva | 2ms | 3468 KiB | ||||
17 | Elfogadva | 2ms | 3752 KiB | ||||
18 | Elfogadva | 3ms | 3960 KiB | ||||
19 | Elfogadva | 3ms | 4152 KiB | ||||
20 | Elfogadva | 2ms | 4188 KiB | ||||
21 | Elfogadva | 2ms | 4092 KiB | ||||
22 | Elfogadva | 2ms | 4196 KiB | ||||
subtask4 | 30/30 | ||||||
23 | Elfogadva | 7ms | 5264 KiB | ||||
24 | Elfogadva | 18ms | 7068 KiB | ||||
25 | Elfogadva | 45ms | 13024 KiB | ||||
26 | Elfogadva | 48ms | 13404 KiB | ||||
27 | Elfogadva | 48ms | 13660 KiB | ||||
28 | Elfogadva | 19ms | 8612 KiB | ||||
29 | Elfogadva | 4ms | 5192 KiB | ||||
30 | Elfogadva | 4ms | 5440 KiB | ||||
31 | Elfogadva | 4ms | 5020 KiB | ||||
subtask5 | 40/40 | ||||||
32 | Elfogadva | 7ms | 6020 KiB | ||||
33 | Elfogadva | 21ms | 7844 KiB | ||||
34 | Elfogadva | 39ms | 11016 KiB | ||||
35 | Elfogadva | 54ms | 13896 KiB | ||||
36 | Elfogadva | 61ms | 14092 KiB | ||||
37 | Elfogadva | 59ms | 14096 KiB | ||||
38 | Elfogadva | 32ms | 9956 KiB | ||||
39 | Elfogadva | 41ms | 13236 KiB | ||||
40 | Elfogadva | 10ms | 7056 KiB | ||||
41 | Elfogadva | 16ms | 7424 KiB |