HDOJ Eddy's AC难题
来源:互联网 发布:金枝欲孽 甄嬛传 知乎 编辑:程序博客网 时间:2024/05/16 18:27
Eddy's AC难题
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4734 Accepted Submission(s): 2234
Eddy是个ACMer,他不仅喜欢做ACM题,而且对于Ranklist中每个人的ac数量也有一定的研究,他在无聊时经常在纸上把Ranklist上每个人的ac题目的数量摘录下来,然后从中选择一部分人(或者全部)按照ac的数量分成两组进行比较,他想使第一组中的最小ac数大于第二组中的最大ac数,但是这样的情况会有很多,聪明的你知道这样的情况有多少种吗?
特别说明:为了问题的简化,我们这里假设摘录下的人数为n人,而且每个人ac的数量不会相等,最后结果在64位整数范围内.
Input
输入包含多组数据,每组包含一个整数n,表示从Ranklist上摘录的总人数。
Output
对于每个实例,输出符合要求的总的方案数,每个输出占一行。
Sample Input
2
4
Sample Output
1
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4734 Accepted Submission(s): 2234
http://acm.hdu.edu.cn/showproblem.php?pid=2200
Eddy是个ACMer,他不仅喜欢做ACM题,而且对于Ranklist中每个人的ac数量也有一定的研究,他在无聊时经常在纸上把Ranklist上每个人的ac题目的数量摘录下来,然后从中选择一部分人(或者全部)按照ac的数量分成两组进行比较,他想使第一组中的最小ac数大于第二组中的最大ac数,但是这样的情况会有很多,聪明的你知道这样的情况有多少种吗?
特别说明:为了问题的简化,我们这里假设摘录下的人数为n人,而且每个人ac的数量不会相等,最后结果在64位整数范围内.
Input
输入包含多组数据,每组包含一个整数n,表示从Ranklist上摘录的总人数。
Output
对于每个实例,输出符合要求的总的方案数,每个输出占一行。
Sample Input
2
4
Sample Output
1
17
解析:这题我用递推写出来了,设f[n]表示结果,max[n]表示n个数中最大的;
(1)当方法中不包含max[n],是可知f1[n]==f[n-1]
(2)当方法中包含max[n]时
1)当大的一边除了max[n]还有其他数时,相当于在f[n-1]所有方法大的一边加入max[n],数量也为f[n-1]
2)当大的一边只有max[n]时, 另一边不管怎么取肯定是较小的,相当于在n-1个数之中取1、2、3、---n-1个数,
结果为C(1, n-1)+C(2, n-1)+C(3, n-1)-----+C(n-1, n-1)==2^(n-1)-C(0, n-1)==2^(n-1)-1,这一步是根据高中的知识,二项式展开可得,
例如(1+1)^2==C(0, 1)+C(1, n)+……+C(n, n)=2^n
所以f2[n]=f[n-1]+2^n-1;
所以综上所述f[n]==f1[n]+f2[n]==2*f[n-1]+2^n-1;代码实现就很简单了。
# include <iostream># include <math.h># include <stdlib.h>using namespace std;long long int f[500];int main(){int n, i, j, k;while(cin>>n){f[2]=1;for(i=3; i<=n; i++){f[i]=2*f[i-1]+pow(2, i-1)-1;}cout<<f[n]<<"\n";}return 0;}
0 0
- HDOJ Eddy's AC难题
- Hdoj 2200 Eddy's AC难题 【数学】
- HDOJ 2200 Eddy's AC难题
- Eddy's AC难题
- Eddy's AC难题
- Eddy's AC难题
- Eddy's AC难题
- hdoj 2200 Eddy's AC难题 【找规律】
- HDOJ-2200-Eddy's AC难题(组合数)
- hdoj.2200 Eddy's AC难题【水题】 2015/04/21
- HDOJ 2200 Eddy's AC难题(数学组合概率题)
- OJ---Eddy's AC难题
- Eddy's AC难题 2200
- HDU2220 Eddy's AC难题
- 2200:Eddy's AC难题
- hdu2200 Eddy's AC难题
- Eddy's AC难题 HDU
- Eddy's AC难题 HDU
- IIkcotSlleSdnayuBotemiTtseB.122
- 1094 The Largest Generation
- C学习地址汇总
- 收集oracle统计信息
- 理解inode
- HDOJ Eddy's AC难题
- JVM学习之ClassLoader的工作机制
- ART、JIT、AOT、Dalvik之间有什么关系?
- J2EE与DiscuzX3.2的UCenter实现单点登录
- 如何 找出未收集统计信息,以及统计信息过期的表
- prototype
- SQL SERVER 分组求和
- C语言和设计模式(总结篇)
- C语言中静态库的使用