Cod sursa(job #1028189)

Utilizator TibixbAndrei Tiberiu Tibixb Data 13 noiembrie 2013 19:15:13
Problema Interclasari Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<fstream>
using namespace std;
int i, j, v1[1000003], v2[1000003], vf[1000003], k, k2, n, m, aux;
FILE*fin=fopen("interclasari.in","r");
ofstream fout("interclasari.out");
int main(){
	fscanf(fin,"%d%d", &k2, &n);
	for(i=1; i<=n; i++)
		fscanf(fin,"%d", &v1[i]);

	for(aux=2; aux<=k2; aux++){
		k = 0;
		fscanf(fin,"%d", &m);
		for(i=1; i<=m; i++)
			fscanf(fin,"%d", &v2[i]);
		
		i=j=1;
		while(i<=n && j<=m){
			if(v1[i]<=v2[j]){
				vf[++k]=v1[i];
				i++;
			}
			else{
				vf[++k]=v2[j];
				j++;
			}
		}			
		for(; j<=m; j++)
			vf[++k]=v2[j];

		for(; i<=n; i++)
			vf[++k]=v1[i];
		
		for(i=1; i<=k; i++)
			v1[i]=vf[i];
		n = k;
	}
	fout<<k<<"\n";
	for(i=1; i<=k; i++)
		fout<<vf[i]<<" ";
return 0;
}