Cod sursa(job #25825)

Utilizator xulescuStefu Gabriel xulescu Data 4 martie 2007 15:01:59
Problema Balanta Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include <fstream.h>

int maimari[1024],maimari1[1024];
int nmm=1024,nmm1=1024;
int n,m,k,r;
int cant[2048];

void cauta(int *mult,int q,int &nmml,*maimaril){
	int x=nmml,m[1024],c=0,i,j;
	for(i=0;i<q;i++)
		for(j=0;j<x;j++)
		if(maimaril[j]==mult[i]){
			m[c]=maimaril[j];
			c++;
			break;
		}
	for(i=0;i<c;i++) maimaril[i]=m[i];
	nmml=c;
}

int main(){
	ifstream f("balanta.in");
	f>>n>>m;
	int mul[1024],q,p,i;
	//initializare
	for(i=0;i<1024;i++) maimari[i]=i+1;

	for(i=0;i<m;i++){
		f>>k;
		for(int j=0;j<k*2;j++) f>>cant[j];
		f>>r;
		if(r==1) for(p=0;p<k;p++){ mul[p]=cant[p]; q=k; mul1[p]=cant[p+k]; q1=k; }
		if(r==2) for(p=0;p<k;p++){ mul[p]=cant[p+k]; q=k; mul1[p]=cant[p]; q1=k; }
		if(r==1||r==2){ cauta(mul,q,nmm,maimari); cauta(mul1,q1,nmm1,maimari1); }
	}
	f.close();
	ofstream g("balanta.out");
	if(nmm==0){ 
		if(nmm1=0) g<<0;
		else g<<maimari1[0];	
	}

	else g<<maimari[0];
	g.close();
	return 0;
}