hdu 1130 How Many Trees?
发布时间:2020-12-14 03:42:24 所属栏目:大数据 来源:网络整理
导读:hdu ? 1130 ? How Many Trees? ? ? ? ? ? ? ? ? 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1130 题目大意:给出整数n,求由1~n组成的二叉查找树有多少种。 题目分析:卡特兰数(用的递归大数)。 code: import java.math.*;import java.util.Sc
hdu ? 1130 ? How Many Trees? ? ? ? ? ? ? ? ? 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1130 题目大意:给出整数n,求由1~n组成的二叉查找树有多少种。 题目分析:卡特兰数(用的递归&&大数)。 code: import java.math.*; import java.util.Scanner; public class Main { static BigInteger two=new BigInteger("2"); static BigInteger four=new BigInteger("4"); static BigInteger one=BigInteger.ONE; public static BigInteger h(BigInteger n){ if(n.compareTo(two)<0)return one; return n.multiply(four).subtract(two).multiply(h(n.subtract(one))).divide(n.add(one)); } public static void main(String[] args) { Scanner in=new Scanner(System.in); BigInteger n=null; while(in.hasNextInt()){ n=in.nextBigInteger(); System.out.println(h(n)); } } }PS:虽然是抄的,但还是学了java大数…… (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |