Cod sursa(job #1934980)

Utilizator c0mradec0mrade c0mrade Data 21 martie 2017 22:15:21
Problema Tribute Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.26 kb
#include <cassert>
#include <fstream>
#include <cstring>
#include <queue>
#include <algorithm>
#include <bitset>
#include <ctime>
#include <set>
#include <cmath>
#include <unordered_map>
#include <iomanip>
#include <map>
#include <stack>
#include <vector>
#include <bitset>
#include <functional>
#include <iostream>

using namespace std;

ifstream fin("tribute.in");
ofstream fout("tribute.out");

#define FOR(i, a, n) for (int i = a; i <= n; ++i)
#define FORN(a, n) for (int i = a; i < n; ++i)
#define ROF(i, n, a) for (int i = n; i >= a; i--)
#define ROFN(n, a) for (int i = n - 1; i >= a; i--)
#define FIT(i, v) for (auto &i : v)
#define pb push_back
#define mp make_pair
#define mt make_touple
#define all(x) (x).begin(), (x).end()
#define fi first
#define se second
#define sz(x) ((int)(x).size())
#define log log2
typedef long long ll;
typedef pair<int, int> pii;
const long long mod = 1000000007;

int n, ans, a, b;
int x[50100], y[50100];

int main() {
	ios_base::sync_with_stdio(false); cin.tie(NULL);

	fin >> n >> a >> b;
	FORN(0, n) {
		fin >> x[i] >> y[i];
	}

	sort(x, x + n);
	sort(y, y + n);

	FOR(i, 0, n/2) {
		ans += max(x[n - i + 1] - x[i] - a, 0) + max(y[n - i + 1] - y[i] - b, 0);
	}

	fout << ans;

	return 0;
}