6520 | 2023-12-06 09:35:16 | EsVagy | Videójáték | cpp17 | Hibás válasz 10/100 | 180ms | 9040 KiB |
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <set>
#include <map>
#include <climits>
#include <queue>
#include <fstream>
#include <sstream>
#include <math.h>
using namespace std;
int main()
{
int t;
int n, m;
vector<pair<int, int>> breaks;
vector<pair<int, int>> friendBreaks;
cin >> t;
cin >> n;
for (int i = 0; i < n; i++)
{
int first, second;
cin >> first >> second;
breaks.push_back(pair<int, int>(first, second));
}
cin >> m;
for (int i = 0; i < m; i++)
{
int first, second;
cin >> first >> second;
friendBreaks.push_back(pair<int, int>(first, second));
}
int sum = 0;
int breakIndex = 0;
int friendBreakIndex = 0;
while (breakIndex < breaks.size() && friendBreakIndex < friendBreaks.size())
{
pair<int, int> match = pair<int, int>(max(breaks[breakIndex].first, friendBreaks[friendBreakIndex].first), min(breaks[breakIndex].second, friendBreaks[friendBreakIndex].second));
if (match.first > match.second)
{
if (breaks[breakIndex].first > friendBreaks[friendBreakIndex].second)
{
friendBreakIndex++;
continue;
}
else
{
breakIndex++;
continue;
}
}
if (match.first >= breaks[breakIndex].first + t)
{
breakIndex++;
continue;
}
sum += match.second - match.first + 1;
if (breaks[breakIndex].second < friendBreaks[friendBreakIndex].second)
{
breakIndex++;
}
else if (breaks[breakIndex].second > friendBreaks[friendBreakIndex].second)
{
breaks[breakIndex].first = friendBreaks[friendBreakIndex].second + 1;
friendBreakIndex++;
}
else
{
breakIndex++;
friendBreakIndex++;
}
}
cout << sum;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1688 KiB | ||||
2 | Elfogadva | 3ms | 1844 KiB | ||||
subtask2 | 10/10 | ||||||
3 | Elfogadva | 3ms | 2092 KiB | ||||
4 | Elfogadva | 3ms | 2180 KiB | ||||
5 | Elfogadva | 3ms | 2312 KiB | ||||
6 | Elfogadva | 3ms | 2548 KiB | ||||
7 | Elfogadva | 3ms | 2692 KiB | ||||
8 | Elfogadva | 3ms | 2944 KiB | ||||
9 | Elfogadva | 3ms | 3000 KiB | ||||
10 | Elfogadva | 3ms | 3132 KiB | ||||
11 | Elfogadva | 3ms | 3216 KiB | ||||
subtask3 | 0/20 | ||||||
12 | Elfogadva | 3ms | 3220 KiB | ||||
13 | Elfogadva | 3ms | 3340 KiB | ||||
14 | Elfogadva | 3ms | 3396 KiB | ||||
15 | Elfogadva | 3ms | 3544 KiB | ||||
16 | Elfogadva | 3ms | 3656 KiB | ||||
17 | Elfogadva | 4ms | 3860 KiB | ||||
18 | Elfogadva | 4ms | 3972 KiB | ||||
19 | Elfogadva | 4ms | 3972 KiB | ||||
20 | Hibás válasz | 4ms | 4020 KiB | ||||
21 | Hibás válasz | 3ms | 3980 KiB | ||||
22 | Hibás válasz | 3ms | 4024 KiB | ||||
subtask4 | 0/30 | ||||||
23 | Elfogadva | 16ms | 4580 KiB | ||||
24 | Elfogadva | 50ms | 5492 KiB | ||||
25 | Elfogadva | 123ms | 8556 KiB | ||||
26 | Elfogadva | 136ms | 8540 KiB | ||||
27 | Elfogadva | 136ms | 8540 KiB | ||||
28 | Elfogadva | 54ms | 5956 KiB | ||||
29 | Hibás válasz | 10ms | 4400 KiB | ||||
30 | Hibás válasz | 10ms | 4468 KiB | ||||
31 | Elfogadva | 7ms | 4548 KiB | ||||
subtask5 | 0/40 | ||||||
32 | Hibás válasz | 17ms | 5172 KiB | ||||
33 | Elfogadva | 59ms | 6116 KiB | ||||
34 | Elfogadva | 112ms | 7416 KiB | ||||
35 | Elfogadva | 159ms | 8984 KiB | ||||
36 | Elfogadva | 180ms | 8984 KiB | ||||
37 | Elfogadva | 180ms | 9040 KiB | ||||
38 | Hibás válasz | 93ms | 7016 KiB | ||||
39 | Hibás válasz | 112ms | 8452 KiB | ||||
40 | Elfogadva | 28ms | 5488 KiB | ||||
41 | Hibás válasz | 43ms | 5672 KiB |