1 /*
2 * SOUR:sgu130
3 * ALGO:catalan数看组合数学的证明
4 * DATE: 2009年 12月 07日 星期一 16:34:54 CST
5 * COMM:2
6 * */
7 #include<iostream>
8 #include<cstdio>
9 #include<cstdlib>
10 #include<cstring>
11 #include<algorithm>
12 using namespace std;
13 typedef long long LL;
14 const int maxint = 0x7fffffff;
15 const long long max64 = 0x7fffffffffffffffll;
16
17 LL n,res,F[32];
18 LL f(LL s)
19 {
20 if(F[s] != 0) {
21 return F[s];
22 }
23 if(s == 0) {
24 return 1;
25 }
26
27 LL sum = 0;
28 for(LL i = 0;i < s;i++) {
29 sum += f(i) * f(s - i - 1);
30 }
31 return (F[s] = sum);
32 }
33
34 int main()
35 {
36 memset(F,0,sizeof(F));
37 cin >> n;
38 cout << f(n) << ' ' << n + 1 <<endl;
39 return 0;
40 }
41
42
43