1. 程式人生 > >HDU-1134 卡特蘭數+java大數模板

HDU-1134 卡特蘭數+java大數模板

題意:

  給你一個n,然後1,2,3。。。2n-1,2n圍一圈,讓每個數都能用一條線配對並且線與線之間不能交叉,問有幾種方法數。

思路:

  1 可以和2,4,6.。。連線。假如   一共有8個數,1和2連線  剩下的3,4,5,6,7,8就相當於

 1 import java.math.*; 
 2 import java.util.Scanner;
 3 public class Main {
 4 
 5     public static void main(String[] args) { 
 6         Scanner in1 = new
Scanner(System.in); 7 BigInteger h[] = new BigInteger[105]; 8 int i,n; 9 h[0]=BigInteger.ONE; 10 for(i=1;i<=100;i++) { 11 h[i]=h[i-1].multiply(BigInteger.valueOf(4*i-2)).divide(BigInteger.valueOf(i+1)); 12 } 13 while(in1.hasNext()) {
14 n=in1.nextInt(); 15 if(n==-1)break; 16 System.out.println(h[n]); 17 } 18 } 19 }