Pagini recente » Cod sursa (job #1592591) | Cod sursa (job #1336319) | Cod sursa (job #3263544) | Cod sursa (job #1186315) | Cod sursa (job #246464)
Cod sursa(job #246464)
// cutii.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
#include <stdlib.h>
int e[3504];
int f[3500];
bool g[3504];
int comparare(const void * a,const void * b)
{
return(*(int*)a - *(int*)b);
}
int main()
{
int n,t,i,j,l,valmax=0,k;
int a,b,c,d=0,p=1,numar=1;
FILE *f1,*f2;
f1=fopen("cutii.in","r");
f2=fopen("cutii.out","w");
fscanf(f1,"%d %d",&n,&t);
for(i=1;i<=n;i++)
f[i]=1;
for(i=1;i<=t;i++)
{
for(j=1;j<=n;j++)
{
fscanf(f1,"%d %d %d",&a,&b,&c);
a=a*100+b*10+c;
e[j]=a;
}
qsort(e,n+1,sizeof(int),comparare);
for(j=1;j<=n;j++)
{
if(g[j])
continue;
numar=1;
p=1;
for(k=j+p;k<=n;k++)
{
b=e[j];
if(g[k])
continue;
for(l=k;l<=n;l++)
if(e[j]%100<e[l]%100 && e[j]%10<e[l]%10)
{
numar++;
e[j]=e[l];
g[l]=true;
}
p++;
if(numar>f[j])
f[j]=numar;
numar=1;
e[j]=b;
}
}
for(j=1;j<=n;j++)
{
if(f[j]>d)
d=f[j];
e[j]=0;
f[j]=1;
g[j]=false;
}
fprintf(f2,"%d\n",d);
d=0;
}
fclose(f1);
fclose(f2);
return 0;
}