6321 | 2023. 11. 16 22:11:01 | kukkerman | Ádám és Éva együtt | cpp14 | Elfogadva 50/50 | 90ms | 10428 KiB |
#include <iostream>
#include <vector>
#include <algorithm>
using Intervallumok = std::vector<std::pair<int, int>>;
void beolvas(std::istream &in, Intervallumok &adam, Intervallumok &eva) {
int utolso_idopont;
in >> utolso_idopont;
int adam_idopontok_szama;
in >> adam_idopontok_szama;
adam.resize(adam_idopontok_szama);
for (int i = 0; i < adam_idopontok_szama; i++) {
in >> adam[i].first >> adam[i].second;
}
int eva_idopontok_szama;
in >> eva_idopontok_szama;
eva.resize(eva_idopontok_szama);
for (int i = 0; i < eva_idopontok_szama; i++) {
in >> eva[i].first >> eva[i].second;
}
}
void feldolgoz(const Intervallumok &adam, const Intervallumok &eva) {
Intervallumok kozos;
auto a = adam.cbegin();
auto e = eva.cbegin();
while (a != adam.cend() && e != eva.cend()) {
const auto k = std::max(a->first, e->first);
const auto v = std::min(a->second, e->second);
if (k < v) {
kozos.emplace_back(k, v);
}
if (a->second == e->second ?
a->first < e->first :
a->second < e->second) {
++a;
} else {
++e;
}
}
std::cout << kozos.size() << std::endl;
for (const auto &k : kozos) {
std::cout << k.first << ' ' << k.second << std::endl;
}
}
int main() {
Intervallumok adam, eva;
beolvas(std::cin, adam, eva);
feldolgoz(adam, eva);
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 50/50 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1816 KiB | |||
2 | Elfogadva | 0/0 | 3ms | 1984 KiB | |||
3 | Elfogadva | 2/2 | 3ms | 2220 KiB | |||
4 | Elfogadva | 2/2 | 3ms | 2400 KiB | |||
5 | Elfogadva | 2/2 | 3ms | 2528 KiB | |||
6 | Elfogadva | 2/2 | 3ms | 2684 KiB | |||
7 | Elfogadva | 2/2 | 3ms | 2696 KiB | |||
8 | Elfogadva | 2/2 | 3ms | 2732 KiB | |||
9 | Elfogadva | 2/2 | 3ms | 2948 KiB | |||
10 | Elfogadva | 2/2 | 3ms | 3160 KiB | |||
11 | Elfogadva | 2/2 | 3ms | 3380 KiB | |||
12 | Elfogadva | 2/2 | 3ms | 3628 KiB | |||
13 | Elfogadva | 2/2 | 3ms | 3836 KiB | |||
14 | Elfogadva | 2/2 | 3ms | 3924 KiB | |||
15 | Elfogadva | 2/2 | 3ms | 3908 KiB | |||
16 | Elfogadva | 2/2 | 79ms | 6012 KiB | |||
17 | Elfogadva | 3/3 | 57ms | 6956 KiB | |||
18 | Elfogadva | 3/3 | 72ms | 7712 KiB | |||
19 | Elfogadva | 4/4 | 54ms | 8136 KiB | |||
20 | Elfogadva | 4/4 | 90ms | 9044 KiB | |||
21 | Elfogadva | 4/4 | 57ms | 9864 KiB | |||
22 | Elfogadva | 4/4 | 57ms | 10428 KiB |