Train Problem II 卡特兰裸题(入门题)

                     Train Problem II  

题目大意:给你一个数n,表示有n辆火车,编号从1到n,从远方驶过来,问你有多少种出站的可能。

解题思路:模拟栈的问题而已。  卡特兰问题。

 

 1 import java.math.*;
 2 import java.util.*;
 3 import java.io.*;
 4 
 5 public class Main
 6 {
 7     static int MS=101;
 8     public static void main(String[] args)
 9     {
10         Scanner cin=new Scanner(new BufferedInputStream(System.in));
11         BigInteger[] ans=new BigInteger[MS];
12         ans[1]=BigInteger.ONE;
13         //  h(n)=h(n-1)*(4*n-2)/(n+1)
14         for(int i=2;i<MS;i++)
15             ans[i]=ans[i-1].multiply(BigInteger.valueOf(4*i-2)).divide(BigInteger.valueOf((i+1)));
16         int n;
17         while(cin.hasNext())
18         {
19             n=cin.nextInt();
20             System.out.println(ans[n]);
21         }
22         cin.close();
23     }
24 }

 

 

posted on 2015-05-11 22:25  hutaishi  阅读(186)  评论(0)    收藏  举报

导航