poj 1953 World Cup Noise(DP)
来源:互联网 发布:前台数据传到msql乱码 编辑:程序博客网 时间:2024/06/05 11:51
题意不是很容易读懂,大意是这样的:
给一个n位的二进制数,求它有多少种不包含连续的一的排列,例如 n = 3时,有5种排列 ( 000, 001, 010, 100, 101)(011, 110, 111 中有连续的1所以不满足).。
思路:
我们先填n位二进制数的第一位,第一位有两种情况,1或0,当第一位为0时,这个n位数的排列数与其后的n-1位排列数相同,当第一位为1时,第二位一定为0(因为不能有连续的1),所以这个n位数的排列,与其后n-2 位数排列相同
所以我们可以得到一个公式 f(n)=f(n-1)+f(n-2)。即斐波拉契数列
有了这个公式我们很容易得到程序。不过需要注意的是,这道题用递归的方法会超时
代码:#include<iostream>#include<stdio.h>#include<string.h>using namespace std;int f[50];int main(){int t,x;f[1]=2;f[2]=3;for(int i=3;i<50;i++){f[i]=f[i-1]+f[i-2];}cin>>t;for(int i=1;i<=t;i++){scanf("%d",&x);printf("Scenario #%d:\n%d\n\n",i,f[x]);}return 0;}
0 0
- poj - 1953 - World Cup Noise(dp)
- poj 1953 World Cup Noise(DP)
- poj 1953 World Cup Noise DP
- POJ 1953 World Cup Noise(数位DP 01串)
- poj 1953 World Cup Noise
- POJ 1953 World Cup Noise
- poj 1953 World Cup Noise
- POJ 1953 World Cup Noise
- poj 1953 World Cup Noise
- poj 1953 World Cup Noise
- POJ-1953-World Cup Noise
- poj 1953 World Cup Noise
- POJ 1953 World Cup Noise
- poj 1953:World Cup Noise
- POJ 1953World Cup Noise
- POJ 1953 World Cup Noise
- POJ 1953 World Cup Noise
- POJ 1953 World Cup Noise
- Oracle:PL/SQL--流程控制(三)——循环结构:loop、while-loop、for-loop
- 计算字符串的相似度-两种解法
- codeforces round 369div2 C Coloring Trees
- css中淘宝网的更多三角制作
- Linux Find 命令总结
- poj 1953 World Cup Noise(DP)
- Spring 学习笔记(二)
- Mysql学习第二课
- kafka实践(一):Kafka入门经典教程(转贴)
- Fragment的生命周期
- JavaScript严格模式与非严格模式之间的区别
- NanoPi M3 使用心得
- 时区与时间(二)
- mysql数据库创建表出错误