Cod sursa(job #1767228)

Utilizator circeanubogdanCirceanu Bogdan circeanubogdan Data 28 septembrie 2016 20:24:54
Problema Zone Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 4.67 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("zone.in");
ofstream g("zone.out");
long long a[550][550],i,ii,j,jj,k,n,u[10],b[550][550],l,c,xx,yy,xx2,yy2;
/*struct abc
{
    int x,y,z,t;
} v[1000];
int cmp(abc A,abc B)
{
    if(A.x==B.x)
    {
        /*if(A.y!=B.y)
            return A.y<B.y;
        else
        {
            if(A.z!=B.z)
                return A.z<B.z;
            else
            {
                if(A.t!=B.t)
                    return A.t<B.t;
            }
        }
        return A.y<B.y;
    }
    return A.x<B.x;
}*/
int verif(long long nr)
{
    for(int i=1; i<=9; i++)
    {
        if(nr==u[i])
            return 1;

    }return 0;
}
int main()
{
    f>>n;
    for(i=1; i<=9; i++)
        f>>u[i];
    for(i=1; i<=n; i++)
        for(j=1; j<=n; j++)
            f>>b[i][j];
    for(i=1; i<=n; i++)
    {
        for(j=1; j<=n; j++)
        {
            a[i][j]=a[i][j-1]+a[i-1][j]-a[i-1][j-1]+b[i][j];

        }
    }

    for(i=1; i<=n; i++)
    {
        for(j=1; j<=n; j++)
        {
            if(verif(a[i][j]))
            {
                l=i;
                c=j;
                for(ii=l+1; ii<=n; ii++)
                {
                    if(verif(a[ii][j]-a[i][j]))
                    {
                        for(jj=c+1; jj<=n; jj++)
                        {
                            if(verif(a[i][jj]-a[i][j])&&verif(a[i][n]-a[i][jj])&&verif(a[n][j]-a[ii][j])&&verif(a[ii][jj]+a[i][j]-a[i][jj]-a[ii][j])&&verif(a[ii][n]-a[i][n]-a[ii][jj]+a[i][jj])&&verif(a[n][n]-a[ii][n]-a[n][jj]+a[ii][jj])&&verif(a[n][jj]-a[ii][jj]-a[n][j]+a[ii][j]))
                            {
                                /*v[++k].x=i;v[k].y=j;v[k].z=ii;v[k].t=jj;*/
                                if(xx==0)
                                {
                                    xx=i;
                                    yy=j;
                                    xx2=ii;
                                    yy2=jj;
                                }
                                else
                                {


                                    if(xx>i)
                                    {
                                        xx=i;
                                        yy=j;
                                        xx2=ii;
                                        yy2=jj;
                                    }
                                    else
                                    {
                                        if(xx==i)
                                        {
                                            if(yy>j)
                                            {
                                                xx=i;
                                                yy=j;
                                                xx2=ii;
                                                yy2=jj;
                                            }
                                            else
                                            {
                                                if(yy==j)
                                                {
                                                    if(xx2>ii)
                                                    {
                                                        xx=i;
                                                        yy=j;
                                                        xx2=ii;
                                                        yy2=jj;
                                                    }
                                                    else
                                                    {
                                                        if(xx2==ii)
                                                        {
                                                            if(yy2>jj)
                                                                xx=i;
                                                            yy=j;
                                                            xx2=ii;
                                                            yy2=jj;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    g<<xx<<" "<<xx2<<" "<<yy<<" "<<yy2;
    return 0;
}