Cod sursa(job #675980)

Utilizator usermeBogdan Cretu userme Data 8 februarie 2012 15:33:09
Problema Tribute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
using namespace std;
const int N = 50001;
int n,dx,dy,x,y;
int sum[N];
int nrz(int v[N],int d){
	int j,scor=0,min=0;
	for(j=d+1;j<N;j++){
		scor+=v[j]*(j-d);
	}
	sum[0]=v[0];
	for(j=1;j<N;j++)
		sum[j]=sum[j-1]+v[j];
	min=scor;
	for(j=1;j+d<N;j++){
		scor+=sum[j-1]-(sum[N-1]-sum[j+d-1]);
		if(scor<min)min=scor;
	}
	return min;
}
int nrx[N],nry[N];
int main () {
	int i;
	ifstream f("tribute.in");
	ofstream h("tribute.out");
	f>>n>>dx>>dy;
	for(i=0;i<n;i++){
		f>>x>>y;
		nrx[x]++;
		nry[y]++;
	}
	h<<nrz(nrx,dx)+nrz(nry,dy);
	return 0;
}