Cod sursa(job #1964641)

Utilizator Mihai9Oniga Mihai Mihai9 Data 13 aprilie 2017 16:25:41
Problema Cutii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<cstdio>
#define Max solc>aib2d[x][y]?solc:aib2d[x][y]
#define forxy for(x=X[i]-1;x;x-=x&(-x))for(y=Y[i]-1;y;y-=y&(-y))
#define Forxy for(x=X[i];x<=n;x+=x&(-x))for(y=Y[i];y<=n;y+=y&(-y))
using namespace std;
int n,t,i,x,y,sol,solc,aib2d[3501][3501],X[3501],Y[3501];
int main(){
 freopen("cutii.in","r",stdin);
 freopen("cutii.out","w",stdout);
 scanf("%d%d",&n,&t);
 for(;t;t--){
  for(x=1;x<=n;x++){scanf("%d",&i);scanf("%d%d",&X[i],&Y[i]);}sol=0;
   for(i=1;i<=n;i++){solc=0;forxy solc=Max;solc++; Forxy aib2d[x][y]=Max;sol=sol>solc?sol:solc;}
   printf("%d\n",sol);
   for(i=1;i<=n;i++)Forxy aib2d[x][y]=0;
  }
 return 0;
}