现在的位置: 首页 > 综合 > 正文

HDU1023(Catalan数)

2018年12月20日 ⁄ 综合 ⁄ 共 504字 ⁄ 字号 评论关闭


Catanlan数维基百科:http://zh.wikipedia.org/zh/%E5%8D%A1%E5%A1%94%E5%85%B0%E6%95%B0

hdu1023   题意:一堆火车以严格的顺序到一个站里,问出来的时候有多少种顺序。

  C[0] = 1

  C[n] = C[n-1]*(4*n-2)/(n+1)

import java.math.*;
import java.io.*;
import java.util.*;
public class Main {
	public static void main(String [] args){
		Scanner cin = new Scanner(System.in);
		BigInteger a[] = new BigInteger[101];
		a[0] = BigInteger.ONE;
		for(int i=1; i<=100; ++i){
			a[i] = a[i-1].multiply(BigInteger.valueOf(4*i-2)).divide(BigInteger.valueOf(i+1));
		}
		while(cin.hasNext()){
			System.out.println(a[cin.nextInt()]);
		}
	}
}

抱歉!评论已关闭.