Hdu 1133 Buy the Ticket[卡特兰数小变形]
来源:互联网 发布:gfa交易算法gfajiaoyi 编辑:程序博客网 时间:2024/05/20 05:31
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1133
题目意思,n个人拿50元,m个人拿100元,买票不停止的排队序列。
这个和介绍卡特兰数的例子时候差不多--->猛戳http://blog.csdn.net/u011394362/article/details/40677533。
只是,这个问题变为了n个人拿50元,m个人拿100元。所以算是小小的变形了吧?好吧,这个型变的比较小。。
分析:
我们好是按0,1序列来进行分析。总共的排列方式为C(n + m, n)。那么我们也可以就算出非法序列的种数,也就是n个1和m个0的Sigma序列。。C(n + m, n - 1)。
然后,我们知道每个人都是不同的,排列m! * n!。
ans = ( C(n + m, n) - C(n + m, n - 1) ) * m! * n! =(n + m) ! * (m - n + 1) / (m + 1)。。
大数解决。。
import java.io.*;import java.math.*;import java.util.*;public class Main {public static void main(String[] args){Scanner in = new Scanner(System.in);int m, n, k = 1;while(in.hasNext()){m = in.nextInt();n = in.nextInt();if(m == 0 && n == 0) break;System.out.println("Test #" + k + ":"); k ++;if(m < n){System.out.println("0");continue;}BigInteger ans = BigInteger.ONE;for(int i = 1; i <= m + n; i ++){ans = ans.multiply(BigInteger.valueOf(i));}ans = ans.multiply(BigInteger.valueOf(m - n + 1));ans = ans.divide(BigInteger.valueOf(m + 1));System.out.println(ans);}}}
------>
Java大数类还是比较好用的。。。。
0 0
- Hdu 1133 Buy the Ticket[卡特兰数小变形]
- HDOJ 1133 Buy the Ticket(高精度卡特兰数变形)
- HDU 1133 Buy the Ticket 50,100钱买票,大数乘除法,卡特兰数变形
- hdu 1133 Buy the Ticket(卡特兰数变形+组合数学+java大数)
- hdu 1133 Buy the Ticket(卡特兰数 + 高精度)
- HDU 1133 Buy the Ticket 卡特兰数
- hdu 1133 Buy the Ticket(卡特兰数)
- HDU 1133 Buy the Ticket 卡特兰数 JAVA
- HDU-1133Buy the Ticket 卡特兰数买票问题
- HDU-1133Buy the Ticket 卡特兰数买票问题
- HDU 1133 Buy the Ticket【卡特兰数】
- hdoj 1133 Buy the Ticket 【卡特兰】
- hdu 1133 Buy the Ticket
- buy the ticket hdu 1133
- HDU 1133 Buy the Ticket
- hdu 1133 Buy the Ticket
- hdu-1133-Buy the Ticket
- HDU-1133-Buy the Ticket
- android用户界面之GridView教程实例汇总
- 机器学习相关——文本分类综述
- Qt学习笔记
- DM8168 开机自动运行程序
- 2014年11月1日-11月14日,共21小时,剩4/411小时
- Hdu 1133 Buy the Ticket[卡特兰数小变形]
- ipc 共享内存 shared memmory
- Red Hat 6.5修改yum源
- Verilog_例程笔记_流水灯&按键消抖
- 【Cocos2d-x】Cocos2d-x3.x创建项目
- [LeetCode] Balanced Binary Tree
- 基于I2C的FT5306触摸屏驱动程序执行流程
- LeetCode 136 3Sum Closest
- 使用ContactsContract APIhttp://www.cnblogs.com/carbs/archive/2012/07/16/2593295.html