Cod sursa(job #643314)

Utilizator okros_alexandruOkros Alexandru okros_alexandru Data 3 decembrie 2011 13:59:58
Problema Tribute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<fstream>
#define NMAX 50010
using namespace std;
int a[NMAX],b[NMAX],n,dx,dy;
int sol(int *v,int m) {
	int i,sum=0,min;
	for(i=m+1;i<NMAX;i++)
		sum+=(i-m)*v[i];
	for(i=1;i<NMAX;i++)
		v[i]+=v[i-1];
	min=sum;
	for(i=1;i+m<NMAX;i++) {
		sum+=v[i-1];
		sum-=n-v[i+m-1];
		if(sum<min)
			min=sum;
		}
	return min;
}
void citire() {
	int i,x,y;
	ifstream in("tribute.in");
	in>>n>>dx>>dy;
	for(i=0;i<n;i++) {
		in>>x>>y;
		a[x]++;
		b[y]++;
		}
	in.close();
}
int main() {
	citire();
	ofstream out("tribute.out");
	out<<(sol(a,dx)+sol(b,dy))<<'\n';
	out.close();
	return 0;
}