Cod sursa(job #600539)

Utilizator SmarandaMaria Pandele Smaranda Data 2 iulie 2011 11:20:37
Problema Patrate2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<stdio.h>
long n,nn;
long a[10001];
void read()
{
	scanf("%ld",&n);
	nn=n*n;
}

inline void inmultire(long c)
{
	long i,tr;
	for (i=1;i<=a[0];i++)
		a[i]=a[i]*c;
	tr=0;
	for (i=1;i<=a[0];i++)
	{
		a[i]=a[i]+tr;
		tr=a[i]/10;
		a[i]=a[i]%10;
	}
	while (tr)
	{
		a[++a[0]]=tr%10;
		tr=tr/10;
	}
}

void rez()
{
	long i;
	a[0]=1;
	a[1]=2;
	for (i=2;i<=nn;i++)
		inmultire(2);
	for (i=2;i<=n;i++)
		inmultire(i);
	for (i=a[0];i>=1;i--)
		printf("%ld",a[i]);
}

int main()
{
	
	freopen("patrate2.in","r",stdin);
	freopen("patrate2.out","w",stdout);
	
	read();
	rez();
	return 0;
}