Pagini recente » Cod sursa (job #965031) | Cod sursa (job #2373641) | Cod sursa (job #1386336) | Cod sursa (job #266442) | Cod sursa (job #2779181)
#include<fstream>
using namespace std;
ifstream F("patrate2.in");
ofstream G("patrate2.out");
int x[10000],y[10000],z[10000],i,n;
void P(int A[],int B[])
{
int i,j,t,C[10000]={0};
for(i=1;i<=A[0];++i) {
for(t=0,j=1;j<=B[0]||t;++j,t/=10)
C[i+j-1]=(t+=C[i+j-1]+A[i]*B[j])%10;
if(i+j-2>C[0])
C[0]=i+j-2;
}
for(i=0;i<=C[0];++i)
A[i]=C[i];
}
void R(int A[],int B)
{
int i,t=0;
for(i=1;i<=A[0]||t;++i,t/=10)
A[i]=(t+=A[i]*B)%10;
A[0]=i-1;
}
int main()
{
F>>n,x[1]=y[1]=z[1]=x[0]=y[0]=z[0]=1,R(y,2);
for(i=2;i<=n;++i)
R(x,i),R(y,2);
while(n--)
P(z,y);
for(P(x,z),i=x[0];i;--i)
G<<x[i];
return 0;
}