Cod sursa(job #323529)
Utilizator | Data | 12 iunie 2009 15:37:14 | |
---|---|---|---|
Problema | Patrate2 | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.58 kb |
#include<fstream>
using namespace std;
ifstream f("patrate2.in");
ofstream g("patrate2.out");
long long a[100000],i,n;
void mul(long long A[], long long B)
{
long long i, t = 0;
for (i = 1; i <= A[0] || t; i++, t /= 1000000)
A[i] = (t += A[i] * B) % 1000000;
A[0] = i - 1;
}
int main()
{
f>>n;
a[0]=a[1]=1;
for(i=2;i<=n;++i)
mul(a,i);
n*=n;
for(i=1;i<=n;++i)
mul(a,2);
for(i=a[0];i;--i)
g<<a[i];
g<<"\n";
f.close();
g.close();
return 0;
}