Cod sursa(job #1726415)

Utilizator Bodo171Bogdan Pop Bodo171 Data 7 iulie 2016 22:38:47
Problema Tribute Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include<fstream>
using namespace std;
int n,w,h,x[50005],y[50005],ox,oy,dx[100005],dy[100005],puncte1,puncte2,sum1,sum2,i,mn1,mn2;
int main()
{
    ifstream f("tribute.in");
    ofstream g("tribute.out");
    f>>n>>w>>h;
    mn1=(1<<30);mn2=(1<<30);
    for(i=1;i<=n;i++)
    {
        f>>ox>>oy;
        x[ox]++;
        y[oy]++;
    }
    for(i=50000;i>=0;i--)
    {
        dx[i]=dx[i+1]+puncte1;
        dy[i]=dy[i+1]+puncte2;
        puncte1+=x[i];
        puncte2+=y[i];
    }
    puncte1=0;
    puncte2=0;
    for(i=0;i<=50000;i++)
    {
        sum1+=puncte1;
        sum2+=puncte2;
        if(sum1+dx[i+w]<mn1)
            mn1=sum1+dx[i+w];
        if(sum2+dy[i+h]<mn2)
            mn2=sum2+dy[i+h];
        puncte1+=x[i];
        puncte2+=y[i];
    }
    g<<mn1+mn2;
    return 0;
}