#include<iostream> using namespace std; #define MAX 100 #define BASE 10000 void multiply(int a[],int Max,int b) { int i,array=0; for (i=Max-1; i>=0; i--) { array+=b*a[i]; a[i] = array%BASE; array /= BASE; } } void divide(int a[], int Max, int b) { int i,div=0; for (i=0;i<Max; i++) { div = div*BASE + a[i]; a[i] = div / b; div %= b; } } int main(void) { int a[101][MAX]={0}; int i,j,n; a[1][MAX-1]=1; for (i=2;i<101;i++) { memcpy(a[i],a[i-1],MAX*sizeof(int)); //F[n]=F[n-1] multiply(a[i],MAX,4*i-2); //F[n]=F[n-1]*(4*n-1) divide(a[i],MAX,i+1); //F[n]=F[n-1]*(4*n-1)/(n+1) } while(~scanf("%d",&n)) { i=0; while(a[n][i]==0) i++; printf("%d",a[n][i++]); while(i<MAX) printf("%04d",a[n][i++]); printf("/n"); } }