제출 #901664

#제출 시각아이디문제언어결과실행 시간메모리
901664MilosMilutinovicHotel (CEOI11_hot)C++14
40 / 100
4102 ms24500 KiB
#include <bits/stdc++.h>
using namespace std;
using lint = long long;
using pi = array<int, 2>;
#define sz(v) ((int)(v).size())
#define all(v) (v).begin(), (v).end()
const int MAX = 1505;

int n, m, o;

int main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n >> m >> o;
	vector<pi> c(n);
	for (int i = 0; i < n; i++)
		cin >> c[i][0] >> c[i][1];
	sort(all(c));
	vector<pi> d(m);
	for (int i = 0; i < m; i++)
		cin >> d[i][0] >> d[i][1];
	sort(all(d));
	vector<bool> a(n), b(m);
	lint res = 0;
	while (o--) {
		int mx = (int) -1e9;
		int x = 0, y = 0;
		for (int i = 0; i < n; i++) {
			if (a[i]) continue;
			for (int j = 0; j < m; j++) {
				if (b[j] || c[i][1] < d[j][1]) continue;
				if (d[j][0] - c[i][0] > mx) {
					mx = d[j][0] - c[i][0];
					x = i;
					y = j;
				}
			}
		}
		if (mx > 0) {
			res += mx;
			a[x] = true;
			b[y] = true;
		}
	}
	cout << res << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...