| 6521 | 2023-12-06 09:42:26 | EsVagy | Videójáték | cpp17 | Elfogadva 100/100 | 181ms | 9388 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;
friendBreakIndex++;
}
else
{
breakIndex++;
friendBreakIndex++;
}
}
cout << sum;
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 3ms | 1684 KiB | ||||
| 2 | Elfogadva | 3ms | 2004 KiB | ||||
| subtask2 | 10/10 | ||||||
| 3 | Elfogadva | 3ms | 2168 KiB | ||||
| 4 | Elfogadva | 3ms | 2288 KiB | ||||
| 5 | Elfogadva | 3ms | 2508 KiB | ||||
| 6 | Elfogadva | 3ms | 2748 KiB | ||||
| 7 | Elfogadva | 3ms | 2952 KiB | ||||
| 8 | Elfogadva | 3ms | 3176 KiB | ||||
| 9 | Elfogadva | 3ms | 3384 KiB | ||||
| 10 | Elfogadva | 3ms | 3436 KiB | ||||
| 11 | Elfogadva | 3ms | 3680 KiB | ||||
| subtask3 | 20/20 | ||||||
| 12 | Elfogadva | 3ms | 3692 KiB | ||||
| 13 | Elfogadva | 3ms | 3692 KiB | ||||
| 14 | Elfogadva | 3ms | 3692 KiB | ||||
| 15 | Elfogadva | 3ms | 3816 KiB | ||||
| 16 | Elfogadva | 3ms | 3924 KiB | ||||
| 17 | Elfogadva | 4ms | 4040 KiB | ||||
| 18 | Elfogadva | 4ms | 4272 KiB | ||||
| 19 | Elfogadva | 4ms | 4232 KiB | ||||
| 20 | Elfogadva | 4ms | 4452 KiB | ||||
| 21 | Elfogadva | 4ms | 4444 KiB | ||||
| 22 | Elfogadva | 3ms | 4440 KiB | ||||
| subtask4 | 30/30 | ||||||
| 23 | Elfogadva | 14ms | 4864 KiB | ||||
| 24 | Elfogadva | 48ms | 5940 KiB | ||||
| 25 | Elfogadva | 123ms | 8856 KiB | ||||
| 26 | Elfogadva | 136ms | 9340 KiB | ||||
| 27 | Elfogadva | 136ms | 9344 KiB | ||||
| 28 | Elfogadva | 54ms | 6824 KiB | ||||
| 29 | Elfogadva | 10ms | 5068 KiB | ||||
| 30 | Elfogadva | 10ms | 5148 KiB | ||||
| 31 | Elfogadva | 7ms | 4788 KiB | ||||
| subtask5 | 40/40 | ||||||
| 32 | Elfogadva | 17ms | 5172 KiB | ||||
| 33 | Elfogadva | 59ms | 6180 KiB | ||||
| 34 | Elfogadva | 112ms | 7636 KiB | ||||
| 35 | Elfogadva | 158ms | 9272 KiB | ||||
| 36 | Elfogadva | 180ms | 9388 KiB | ||||
| 37 | Elfogadva | 181ms | 9336 KiB | ||||
| 38 | Elfogadva | 93ms | 7124 KiB | ||||
| 39 | Elfogadva | 112ms | 8676 KiB | ||||
| 40 | Elfogadva | 28ms | 5756 KiB | ||||
| 41 | Elfogadva | 45ms | 5888 KiB | ||||