Starkiller123 @ 2023-04-13 17:47:19
#include<cstdio>
#include<cstring>
using namespace std;
struct xu3{
int v[1001];
}s[51];
int n,l;
int a[1001],b[1001],c[1001],xy[1001],xy1[1001];
int c1[1001],c2[1001],c3[1001];
void fs(int x){
int i=0;
while(x){
++i;
xy[i]=x%10;
x/=10;
}
}
void fs1(int x){
int i=0;
while(x){
++i;
xy1[i]=x%10;
x/=10;
}
}
void HPM(){
for(int i=1;i<=20;i++)
a[i]=xy[i];
for(int i=1;i<=20;i++)
b[i]=xy1[i];
for(int i=1;i<=20;i++)
c[i]=a[i]*b[i];
for(int i=1;i<=21;i++)
if(c[i]>=10){
c[i+1]=c[i]/10;
c[i]%=10;
}
}
void HPA(int i){
for(int j=1;j<=21;j++){
c1[i]=s[i].v[i];
c2[i]=s[i+1].v[i];
}
for(int k=1;k<=21;k++)
c3[i]=c1[i]+c2[i];
for(int i=1;i<=21;i++)
if(c[i]>=10){
c3[i+1]=c3[i]/10;
c3[i]%=10;
l=i+1;
}
}
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
for(int j=i;j>=1;j--){
if(j>1&&j<n){
fs(i);
fs1(i+1);
}
else{
fs(j);
xy1[1]=1;
}
HPM();
}
for(int k=1;k<=n;k++){
for(int l=1;l<=21;l++)
s[i].v[i]=c[i];
}
}
for(int i=1;i<=n;i+=2)
HPA(i);
for(int i=l;i>=1;i--)
printf("%d",c3[i]);
return 0;
}