int a[max+10]={5},bx[max+10]={5},cx[max+10];
int *b=bx,*c=cx,*temp;
main(){
int i=3,j,k,s,r,l=0;
while (i<=455){
for (j=l=k=s=0;j<=max+3;j++){
k=k*10+b[j];s++;
if (i<=k){
a[j]+=(c[j]=k/i);k%=i;
for (r=s-1;r>=0;r--){
b[l+r]=k%10;k=k/10;
}
if (s>3) l=l+s-3;
j=l-1;s=0;
}
}
temp=c;c=b;b=temp;
i++;
}
for (i=max;i>0;i--)
if (a[i]>9){
a[i-1]+=a[i]/10;
a[i]%=10;
}
printf ("e=2.");
for (i=0;i<max;i++)
printf ("%d",a[i]);
}