Cod sursa(job #594575)

Utilizator RazvanSSavu Razvan RazvanS Data 8 iunie 2011 14:10:52
Problema Lacate Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <stdlib.h>

#define file_in "lacate.in"
#define file_out "lacate.out"

int main ( void ) {
	
	int N;
	FILE *fin = fopen(file_in,"r");
	FILE *fout = fopen(file_out,"w");

	fscanf(fin,"%d",&N);
	fclose(fin);

	int *V = (int *) calloc ( (N-1) ,  sizeof(int) );

	fprintf(fout, "%d %d\n", (( N*(N-1) ) /2) , (N-1) );

	int i, j;
	for(i=0;i<N;++i) {

		for(j=0;j<i-1;++j) 	
			fprintf(fout, "%d ", ++V[j]);
		
		if (i>=1) fprintf(fout,"%d ", V[i-1]);

		for (j=1;j<N-i;++j) 
			fprintf(fout, "%d ", V[N-2]+j);
		
		if ( i < N-1 ) V[i] = V[N-2]+1;
		if ( i < N-2 ) V[N-2] += N-i-1;
		fprintf(fout,"\n");

	}

	free(V);
	fclose(fout);

	return 0;
}