xtu oj 1375斐波纳契
题目描述
小明非常喜欢斐波纳契数列,数列为f1=1,f2=2,fn=fn−1+fn−2。小明想知道对于一个整数n,使得n=fi+fj+fk的组合有多少种?比如5=1+1+3或者5=1+2+2,有2种。注意1+2+2 和 2+1+2被认为是同一种。
输入
第一行是一个整数T(1≤T≤1000),表示样例的个数。
每个样例是一个整数n(3≤n≤109)。
输出
依次每行输出一个样例的结果,为一个整数。
样例输入
2
3
5
样例输出
1
2
#include<stdio.h>
int main(){int f[45]={1,1};int i;for(i=2;i<45;i++){f[i]=f[i-1]+f[i-2];}for(i=0;i<45;i++){//先写出一个斐波那契数列,在c++中斐波那契数列最多只能有47个,后面的数太大了 printf("%d ",f[i]);}long long num[100000]={0};//定义一个长数组 ,用来存储三个斐波那契额数列相加可能的值 int j,k;int cnt=0;for(i=1;i<45;i++){for(j=i;j<45;j++){for(k=j;k<45;k++){num[cnt]=f[i]+f[k]+f[j];//三个斐波那契数列相加可能的值存入num数组内 //printf("%lld\n",num[cnt]);cnt++;}}}printf("%d",cnt);long long n;int t;int cnt1;scanf("%d",&t);while(t--){scanf("%lld",&n);cnt1=0;for(i=0;i<cnt;i++){if(n==num[i]){//将输入进来的n和一个由3个斐波那契数列组合的数字可能形成的数字的总的集合进行对比 cnt1++;//每有一个n在总的可能的数组中出现,则该n能有三个数字组成的概率++ }}printf("%d\n",cnt1);}return 0;
}
思路:挺暴力的,就是把三个斐波那契数列所有可能的值都记录在一个数组之中,并且不是按照类似哈希散列一样,出现过为true,没出现就是false,而是通过cnt计数,因为,后面要判断的是数字有几种组合的形式,而不是能不能这样子组合
xtu oj 1375斐波纳契相关推荐
- 数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介、代码实现、exe程序应用(斐波纳契时钟设计)之详细攻略
数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介.代码实现.exe程序应用(斐波纳契时钟设计)之详细攻略 目录 斐波那契数列的简介 斐波那契数列代码实现 1.python代码实现 2.Java ...
- Python3 编程示例:斐波纳契数列
写一个斐波纳契数列: 其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于: 执行结果: 这个例子介绍了几个新特征. 第一行包含了一个复合赋值:变量 a 和 ...
- HDU 2516 取石子游戏 斐波纳契博弈
斐波纳契博弈: 有一堆个数为n的石子,游戏双方轮流取石子,满足: 1)先手不能在第一次把所有的石子取完: 2)之后每次可以取的石子数介于1到对手刚取的石子数的2倍之间(包含1和对手刚取的石子数的2倍) ...
- [CS101] 转载:浅议Fibonacci(斐波纳契)数列求解
原文转载自林健随笔的"浅议Fibonacci(斐波纳契)数列求解" Fibonacci 数列 描述了动物繁殖数量.植物花序变化等自然规律.作为一个经典的数学问题,Fibonacci ...
- 兔子问题,斐波纳契数列
题目:古典问题(斐波纳契数列):有一对兔子,从出生后3个月起每个月都生一对兔子,小兔子长到第三个月又会生一对兔子,假如兔子都不死,问每个月兔子总数? 分析规律:1 1 2 3 5 8 13 21- 从 ...
- python小明爬楼梯_LintCode Python 简单级题目 111.爬楼梯 (斐波纳契数列 青蛙跳)
**设f(n)为n阶台阶的情况下,所有不同的跳法方法的总和!** 1.如果起始跳一阶的话,剩余的n-1阶就有 f(n-1) 种跳法: 2.如果起始跳二阶的话,剩余的n-2阶就有 f(n-2) 种跳法: ...
- 【Java8】Stream 由函数生成流:创建无限流 - 实现斐波纳契数列
Stream API提供了两个静态方法来从函数生成流:Stream.iterate和Stream.generate. 这两个操作可以创建所谓的无限流:不像从固定集合创建的流那样有固定大小的流.由ite ...
- 在计算机科学中算法指的是,算法 - 为什么斐波纳契数在计算机科学中具有重要意义?...
算法 - 为什么斐波纳契数在计算机科学中具有重要意义? Fibonacci数字已经成为计算机科学学生递归的一个流行的介绍,并且有一个强烈的论据,他们坚持在自然界. 出于这些原因,我们很多人都熟悉它们. ...
- Python3 编程第一弹 斐波纳契数列
现在,我们能使用 Python 完成比 1 + 2 更复杂的工作.在下例里,我们能写出一个初步的斐波纳契数列如下: #!/usr/bin/python3 # Fibonacci series: 斐波 ...
最新文章
- svn 回归某一个特定版本
- MongoDB数据库(二:高级操作)
- 浏览器崩溃时提示137错误
- 需要熟悉的几个调试命令:objdump/pmap/ldd/stace
- sql server总结二
- HDU - 2296 Ring(AC自动机+dp)
- 指数随机变量 泊松过程跳_如何深刻的理解随机变量
- 新入职了一个卷王 , 天天加班12点!张口闭口就手写spring , 太让人崩溃了......
- 动态规划入门——第N个泰波那契数(Leetcode 1137)
- Octave入门基础
- VirtualBox+CentOS6.6安装增强功能包 - Building the main Guest Additions module [失败]
- zabbix 数据采集方法
- 凹凸实验室:支撑数千万消费者的小程序开发实践
- 导出手机缓存的B站视频或者在PC电脑端下载B站视频到本地
- 搞定java面试系列--jvm3 gc垃圾回收
- python爬虫网易云音乐评论最多的歌_Python爬虫44万条数据揭秘:如何成为网易云音乐评论区的网红段子手?...
- 5g理论速度_5G的速度到底能有多快?
- Eclipse12:CookieSession
- 高级刀片服务器系统,刀片服务器系统
- 算法:数字的排列组合问题
热门文章
- 地下城与勇士鬼剑士觉醒java_地下城与勇士之鬼剑士觉醒单机版
- Python读取zip文件中的图片(无需解压)
- python画误差图_Python数据可视化:如何创建误差图
- Javaweb回炉简要学习笔记
- matlab常用代码(读取文件、批量导入数据、与或非)
- 超微服务器硬盘红灯_服务器硬盘亮红灯崩溃怎么办?数据丢失都是怎么找回的...
- 服务器迁移域名和证书要改什么用,服务器数据迁移方案介绍 怎样更换网站域名?...
- 走近棒球运动·韩国职业棒球联盟·MLB棒球创造营
- Android中设置字体居中,【Android】TextView中不同大小字体如何上下垂直居中?
- 泰科MDO3034示波器波形FFT分析及数据导出