Cod sursa(job #2316732)

Utilizator triscacezarTrisca Vicol Cezar triscacezar Data 12 ianuarie 2019 12:33:04
Problema Tribute Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("tribute.in");
ofstream g("tribute.out");

int n,x,y,dx,dy,i,j,hor[50010],ver[50010],sthor[50010],stver[50010],drhor[50010],drver[50010];

int main()
{
    f>>n>>dx>>dy;dx++,dy++;
    for(i=1;i<=n;i++)
    {
        f>>x>>y;
        hor[x]++;
        ver[y]++;
    }int cnt=hor[0];
    for(i=1;i<=50000;i++)
    {
        sthor[i]=sthor[i-1]+cnt;
        cnt+=hor[i];
    }cnt=0;
    for(i=50000;i>=0;i--)
    {
        drhor[i]=drhor[i+1]+cnt;
        cnt+=hor[i];
    }cnt=ver[0];
    for(i=1;i<=50000;i++)
    {
        stver[i]=stver[i-1]+cnt;
        cnt+=ver[i];
    }cnt=0;
    for(i=50000;i>=0;i--)
    {
        drver[i]=drver[i+1]+cnt;
        cnt+=ver[i];
    }cnt=0;
    int ans=1e9,ans2=1e9;
    for(i=0,j=dx-1;j<=50000;i++,j++)
        ans=min(ans,sthor[i]+drhor[j]);
    for(i=0,j=dy-1;j<=50000;i++,j++)
        ans2=min(ans2,stver[i]+drver[j]);
    g<<ans+ans2;
    return 0;
}