Cod sursa(job #1663114)

Utilizator isav_costinVlad Costin Andrei isav_costin Data 25 martie 2016 15:51:08
Problema Tribute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <cstdio>
#include <algorithm>
int lin[50001], col[50001];

using namespace std;

int main()
{
    freopen( "tribute.in", "r", stdin );
    freopen( "tribute.out", "w", stdout );
    int n, k, i, x, y, l, c, zl=0, zc=0, sl=0, sc=0, nrl=0, nrc=0;
    scanf( "%d%d%d", &n, &x, &y );
    for( i=1; i<=n; i++ )
    {
        scanf( "%d%d", &l, &c );
        lin[l]++;
        col[c]++;
        if( l>x )
            sl=sl+l-x, nrl++;
        if( c>y )
            sc=sc+c-y, nrc++;
    }
    k=sl;
    for( i=x+1; nrl>0; i++ )
    {
        sl-=nrl;
        nrl-=lin[i];
        zl+=lin[i-x-1];
        sl+=zl;
        k=min(k,sl);
    }
    sl=k;
    k=sc;
    for( i=y+1; nrc>0; i++ )
    {
        sc-=nrc;
        nrc-=col[i];
        zc+=col[i-y-1];
        sc+=zc;
        k=min(k,sc);
    }
    sc=k;
    printf( "%d", sl+sc );
    return 0;
}