Cod sursa(job #1202030)
Utilizator | Data | 26 iunie 2014 17:34:53 | |
---|---|---|---|
Problema | Patrate2 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <cstdio>
using namespace std;
long long i,Sol[5000],t,n;
inline void Inm(long long x)
{
long long i,t;
i=1;
t=0;
while(i<=Sol[0]||t)
{
t+=Sol[i]*x;
Sol[i++]=t%10;
t/=10;
}
Sol[0]=i-1;
}
int main()
{
freopen("patrate2.in","r",stdin);
freopen("patrate2.out","w",stdout);
scanf("%lld",&n);
Sol[0]=Sol[1]=1;
for(i=2;i<=n;i++)
Inm(i);
for(i=30;i<=n*n;i+=30)
Inm(1<<30);
i=(n*n)%30;
Inm(1<<i);
for(i=Sol[0];i;i--)
printf("%d",Sol[i]);
return 0;
}