6969 2023. 12. 22 15:57:50 MagyarKendeSZLG Találkozás cpp17 Időlimit túllépés 38/55 300ms 4720 KiB
#include <iostream>
#include <vector>
#include <array>
#include <queue>
#include <climits>
#include <algorithm>
#include <numeric>

using namespace std;

#define speed cin.tie(0); ios::sync_with_stdio(0)

const int INF = 100'001;

int main()
{
	speed;

	int N, H;
	cin >> N;

	H = N / 2 + (N & 1);
	
	vector<int> eS(N);
	vector<int> vS(N);

	for (int i = 0; i < N; i++) {
		int E, V;
		cin >> E >> V;
		eS[i] = E;
		vS[i] = V;
	}

	std::sort(eS.begin(), eS.end());
	std::sort(vS.begin(), vS.end());

	array<int, 2> min_v{ 0, INF };

	for (int i = 0; i < N; i++) {

		int e = vS[i],
			v = eS.back(),
			curr = N - i + 1,
			j = N;

		while (e < v && H < curr) {

			v = eS[--j];
			
			curr--;

			// cerr << vS[i] << ", " << curr << " : " << e << ' ' << v << '\n';

			if (v - e < min_v[1] - min_v[0]) {
				min_v = { e, v };
			}
		}
	}
	
	// cerr << '\n';

	cout << min_v[1] - min_v[0] + 1 << '\n' << min_v[0] << ' ' << min_v[1];
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 38/55
1 Elfogadva 0/0 3ms 1828 KiB
2 Időlimit túllépés 0/0 300ms 2220 KiB
3 Hibás válasz 0/2 3ms 2268 KiB
4 Elfogadva 2/2 3ms 2440 KiB
5 Elfogadva 2/2 3ms 2528 KiB
6 Elfogadva 2/2 3ms 2524 KiB
7 Elfogadva 2/2 3ms 2656 KiB
8 Elfogadva 3/3 3ms 2740 KiB
9 Elfogadva 3/3 3ms 3004 KiB
10 Elfogadva 3/3 3ms 3004 KiB
11 Elfogadva 3/3 14ms 3160 KiB
12 Elfogadva 3/3 29ms 3408 KiB
13 Elfogadva 3/3 30ms 3300 KiB
14 Elfogadva 3/3 107ms 3476 KiB
15 Elfogadva 3/3 108ms 3584 KiB
16 Elfogadva 3/3 98ms 3380 KiB
17 Elfogadva 3/3 103ms 3380 KiB
18 Időlimit túllépés 0/3 270ms 2652 KiB
19 Hibás válasz 0/3 28ms 4464 KiB
20 Hibás válasz 0/3 25ms 4720 KiB
21 Időlimit túllépés 0/3 300ms 3736 KiB
22 Időlimit túllépés 0/3 270ms 3700 KiB