Cod sursa(job #821120)

Utilizator dariusdariusMarian Darius dariusdarius Data 21 noiembrie 2012 18:59:17
Problema Patrate2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<stdio.h>
int a[100005];
void multiply(int val)
{
	int tr=0,i;
	for(i=1;i<=a[0];i++)
	{
		a[i]=a[i]*val+tr;
		tr=a[i]/10;
		a[i]%=10;
	}
	while(tr!=0) {a[++a[0]]=tr%10;tr=tr/10;}
}
int main()
{
	freopen("patrate2.in","r",stdin);
	freopen("patrate2.out","w",stdout);
	int n,i;
	scanf("%d",&n);
	a[0]=a[1]=1;
	//rezultatul e n! * 2^(n*n)
	for(i=1;i<=n;++i)      multiply(i);
	for(i=1;i<=n*n/30;++i) multiply(1<<30);
	multiply((n*n)%30);
	for(i=a[0];i>=1;i--)
		printf("%d",a[i]);
    printf("\n");
	return 0;

}