Cod sursa(job #1202118)

Utilizator IulianBoboUAIC Boboc Iulian IulianBobo Data 26 iunie 2014 21:55:29
Problema Patrate2 Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
using namespace std;
int v[10000];

void multiply(int v[],unsigned long x)
{
	int t=0,s;
	for(int i=1;i<=v[0];++i)
	{
		v[i]=v[i]*x+t;
		t=v[i]/10;
		v[i]=v[i]%10;
	}
	while(t>0)
	{
		v[++v[0]]=t%10;
		t/=10;
	}
}

int main()
{
	ifstream f("patrate2.in");
	ofstream g("patrate2.out");
	int n,n_patrat;
	long i;
	unsigned long x;
	f>>n;
	n_patrat=n*n;
	v[1]=v[0]=1;
	while(n_patrat>30)
	{
		n_patrat=n_patrat-30;
		x=1<<30;
		multiply(v,x);
	}
	x=1<<n_patrat;
	multiply(v,x);
	for(i=1;i<=n;i++) multiply(v,i);
	for(i=v[0];i;--i) g<<v[i];
	return 0;
}