算法训练 6-1 递归求二项式系数值
2017-01-13 21:35
281 查看
受到“未名湖的烦恼“问题的打击,又刚好在混乱的文件库里翻到某大神好久以前发给我的《常见算法》PDF,打开看了一下,真的很适合我这个阶段学习(拜谢大佬),经过N天的苦读(+狂热的玩游戏),终于大致看完了!
于是....我又来水题了...
希望这次不要被虐的太惨.....
算法训练 6-1 递归求二项式系数值
时间限制:10.0s 内存限制:256.0MB
问题描述
样例输入
一个满足题目要求的输入范例。
3 10
样例输出
与上面的样例输入对应的输出。
数据规模和约定
输入数据中每一个数的范围。
例:结果在int表示时不会溢出。
题目几乎都给出了递归方法,于是很快就解决了,数学好些的人估计都秒懂(数学渣的我问室友的公式
#include <stdio.h>
int diGui(int k,int n){
if(k>n/2) k=n-k;
if(k==0||n==1) return 1;
else return diGui(k,n-1)+diGui(k-1,n-1);
}
int main() {
int k,n;
scanf("%d%d",&k,&n);
printf("%d",diGui(k,n));
return 0;
}需要在意的是if(k>n/2) k=n-k;这点
不理解的话就翻下数学书好啦~
于是....我又来水题了...
希望这次不要被虐的太惨.....
算法训练 6-1 递归求二项式系数值
时间限制:10.0s 内存限制:256.0MB
问题描述
样例输入
一个满足题目要求的输入范例。
3 10
样例输出
与上面的样例输入对应的输出。
数据规模和约定
输入数据中每一个数的范围。
例:结果在int表示时不会溢出。
题目几乎都给出了递归方法,于是很快就解决了,数学好些的人估计都秒懂(数学渣的我问室友的公式
#include <stdio.h>
int diGui(int k,int n){
if(k>n/2) k=n-k;
if(k==0||n==1) return 1;
else return diGui(k,n-1)+diGui(k-1,n-1);
}
int main() {
int k,n;
scanf("%d%d",&k,&n);
printf("%d",diGui(k,n));
return 0;
}需要在意的是if(k>n/2) k=n-k;这点
不理解的话就翻下数学书好啦~
相关文章推荐
- Linux的进程优先级 NI 和 PR
- Linux的进程优先级 NI 和 PR
- 创龙TMS320C6748开发板———SPI接口配置
- 奖学金pascal程序
- 创龙TMS320C6748开发板———Timer配置 + Timer触发中断 + GPIO控制LED闪烁
- 一步一步掌握java的线程机制(一)----创建线程
- strstr函数的使用
- 【菜鸟小屁的成长日记】之ElasticSearchElasticsearch<入门>篇
- 【NOIP2014模拟9.9】逆光 (Standard IO)
- Linux 源码编译安装curl
- python2 爬虫爬教务管理,还有验证码识别
- 【寒假任务】洛谷1540 机器翻译
- 蓝桥杯基础题目:2-8
- 创龙TMS320C6748开发板———uPP配置
- 仓促地到了中年
- java中Scanner类nextInt之后用nextLine无法读取输入
- JMeter中BeanShell的实际应用
- Opencv2.4.9源码分析——Cascade Classification(三)
- 一个ListView布局的不断演化
- Maven和Nexus