1.



/*
* 10312 - Expression Bracketing
* Studiengruppe: IFB2C
* Martin Pesl
* Robert Reichart
* Elvin Uzeirovic
*
* Run Time Submission Date
* 0.176 2009-06-16 21:16:10
*/


import java.io.*;

class Main
{

public static void main(String... args) throws IOException
{
String[] werte = new String[27];
werte[0]="0";
werte[1]="0";
werte[2]="0";
werte[3]="1";
werte[4]="6";
werte[5]="31";
werte[6]="155";
werte[7]="771";
werte[8]="3850";
werte[9]="19363";
werte[10]="98187";
werte[11]="502063";
werte[12]="2587937";
werte[13]="13440857";
werte[14]="70296473";
werte[15]="370019079";
werte[16]="1959106674";
werte[17]="10428220683";
werte[18]="55779368219";
werte[19]="299681788263";
werte[20]="1616594895397";
werte[21]="8752745540025";
werte[22]="47550361333961";
werte[23]="259124455145823";
werte[24]="1416118615851221";
werte[25]="7759443920290221";
werte[26]="42620109348084205";

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
String line;
while(input.ready()){
line=input.readLine();
System.out.println(werte[Integer.parseInt(line)]);
}
}
}



2.

/**
* ACM programming Contest WS 08/09
10312 Combinatorial Expression
* UVa Status: AC
* Run Time: 0.008
* Programming Language: ANSI C
* @author Doina Logofatu logofatu@hm.edu
*/

/* the Super Catalan number */
long long SC(int n){
long long s0=1, s1=1, aux;
int i;
if(n==1) return 1;
if(n==2) return 1;

for(i=3; i<=n; i++){
aux = (3*(2*i-3)*s1-(i-3)*s0)/i;
s0=s1;
s1=aux;
}
return s1;
}

/* the Catalan Number */
long long C(int n){
long long c0, aux;
int i;
if(n==0) return 1;
if(n==1) return 1;

c0=1;
for(i=2; i<=n; i++){
c0 = c0 * 2 * (2*i-1)/(i+1);
}

return c0;
}

/* Solution: SC(n)-C(n-1) */
int main(){

int n;

while(scanf("%d", &n)==1){
printf("%lld\n", SC(n)-C(n-1));
}

return 0;
}


3.

/**
* ACM programming Contest WS 08/09
10312 Combinatorial Expression
* UVa Status: AC
* Run Time: 0.004
* Programming Language: ANSI C
* @author Doina Logofatu logofatu@hm.edu
*/


/* Solution: SuperCatalan(n)-Catalan(n-1) */
int main(){

long long aC[27]={1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440,
9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020,
91482563640, 343059613650, 1289904147324, 4861946401452, 18367353072152};

long long aSC[27]={1, 1, 1, 3, 11, 45, 197, 903, 4279, 20793, 103049, 518859, 2646723, 13648869,
71039373, 372693519, 1968801519, 10463578353, 55909013009, 300159426963,
1618362158587, 8759309660445, 47574827600981, 259215937709463, 1416461675464871,
7760733824437545, 42624971294485657};

int n;

while(scanf("%d", &n)==1){
printf("%lld\n", aSC[n]-aC[n-1]);
}

return 0;
}