Cod sursa(job #371400)

Utilizator milijrCristian Militaru milijr Data 5 decembrie 2009 10:31:17
Problema Cutii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.24 kb
#include<fstream>
#include<iostream>
using namespace std;
int main()
{
	int a[100][3],j,t,l,i,n,aux,o,c,ok;
	ifstream fin("cutii.in");
	ofstream fout("cutii.out");
	fin>>n>>t;
	for(o=1;o<=t;o++)
	{
		for(i=1;i<=n;i++)
			for(j=1;j<=3;j++)
				fin>>a[i][j];
		for(i=1;i<n;i++)
			for(j=i+1;j<=n;j++)
			{
				if(a[i][3]<a[j][3])
				{
					for(l=1;l<=3;l++)
					{
						aux=a[i][l];
						a[i][l]=a[j][l];
						a[j][l]=aux;
					}
				}
				if(a[i][2]<a[j][2] && a[i][3]==a[j][3])
				{
					for(l=1;l<=3;l++)
					{
						aux=a[i][l];
						a[i][l]=a[j][l];
						a[j][l]=aux;
					}
				}
				if(a[i][1]<a[j][1] && a[i][2]==a[j][2] && a[i][3]==a[j][3])
				{
					for(l=1;l<=3;l++)
					{
						aux=a[i][l];
						a[i][l]=a[j][l];
						a[j][l]=aux;
					}
				}
			}
		c=1;
		i=0;
		while(1>0)
		{
			lala:;
			i++;
			if(i==n)
				goto a;
			j=i;
			while(1<2)
			{
				b:;
				if(j==n)
					break;
				j++;
				ok=1;
				for(l=1;l<=3;l++)  //verificam daca dimensiunile sunt mai mari;
				{
					if(a[i][l]<a[j][l])
						goto b;
				}
				// daca a gasit o cutie buna marim i;
				c++;
				goto lala;
			}
		}
		a:;
		fout<<c;
		if(o!=t)
			fout<<endl;
	}
	fout.close();
	return 0;
}