题目描述
小明非常喜欢斐波纳契数列,数列为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斐波纳契相关推荐

  1. 数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介、代码实现、exe程序应用(斐波纳契时钟设计)之详细攻略

    数学编程:经典数学编程案例之斐波那契:斐波那契数列的简介.代码实现.exe程序应用(斐波纳契时钟设计)之详细攻略 目录 斐波那契数列的简介 斐波那契数列代码实现 1.python代码实现 2.Java ...

  2. Python3 编程示例:斐波纳契数列

    写一个斐波纳契数列: 其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于: 执行结果: 这个例子介绍了几个新特征. 第一行包含了一个复合赋值:变量 a 和 ...

  3. HDU 2516 取石子游戏 斐波纳契博弈

    斐波纳契博弈: 有一堆个数为n的石子,游戏双方轮流取石子,满足: 1)先手不能在第一次把所有的石子取完: 2)之后每次可以取的石子数介于1到对手刚取的石子数的2倍之间(包含1和对手刚取的石子数的2倍) ...

  4. [CS101] 转载:浅议Fibonacci(斐波纳契)数列求解

    原文转载自林健随笔的"浅议Fibonacci(斐波纳契)数列求解" Fibonacci 数列 描述了动物繁殖数量.植物花序变化等自然规律.作为一个经典的数学问题,Fibonacci ...

  5. 兔子问题,斐波纳契数列

    题目:古典问题(斐波纳契数列):有一对兔子,从出生后3个月起每个月都生一对兔子,小兔子长到第三个月又会生一对兔子,假如兔子都不死,问每个月兔子总数? 分析规律:1 1 2 3 5 8 13 21- 从 ...

  6. python小明爬楼梯_LintCode Python 简单级题目 111.爬楼梯 (斐波纳契数列 青蛙跳)

    **设f(n)为n阶台阶的情况下,所有不同的跳法方法的总和!** 1.如果起始跳一阶的话,剩余的n-1阶就有 f(n-1) 种跳法: 2.如果起始跳二阶的话,剩余的n-2阶就有 f(n-2) 种跳法: ...

  7. 【Java8】Stream 由函数生成流:创建无限流 - 实现斐波纳契数列

    Stream API提供了两个静态方法来从函数生成流:Stream.iterate和Stream.generate. 这两个操作可以创建所谓的无限流:不像从固定集合创建的流那样有固定大小的流.由ite ...

  8. 在计算机科学中算法指的是,算法 - 为什么斐波纳契数在计算机科学中具有重要意义?...

    算法 - 为什么斐波纳契数在计算机科学中具有重要意义? Fibonacci数字已经成为计算机科学学生递归的一个流行的介绍,并且有一个强烈的论据,他们坚持在自然界. 出于这些原因,我们很多人都熟悉它们. ...

  9. Python3 编程第一弹 斐波纳契数列

    现在,我们能使用 Python 完成比 ​1 + 2 更复杂的工作.在下例里,我们能写出一个初步的斐波纳契数列如下: #!/usr/bin/python3 # Fibonacci series: 斐波 ...

最新文章

  1. svn 回归某一个特定版本
  2. MongoDB数据库(二:高级操作)
  3. 浏览器崩溃时提示137错误
  4. 需要熟悉的几个调试命令:objdump/pmap/ldd/stace
  5. sql server总结二
  6. HDU - 2296 Ring(AC自动机+dp)
  7. 指数随机变量 泊松过程跳_如何深刻的理解随机变量
  8. 新入职了一个卷王 , 天天加班12点!张口闭口就手写spring , 太让人崩溃了......
  9. 动态规划入门——第N个泰波那契数(Leetcode 1137)
  10. Octave入门基础
  11. VirtualBox+CentOS6.6安装增强功能包 - Building the main Guest Additions module [失败]
  12. zabbix   数据采集方法
  13. 凹凸实验室:支撑数千万消费者的小程序开发实践
  14. 导出手机缓存的B站视频或者在PC电脑端下载B站视频到本地
  15. 搞定java面试系列--jvm3 gc垃圾回收
  16. python爬虫网易云音乐评论最多的歌_Python爬虫44万条数据揭秘:如何成为网易云音乐评论区的网红段子手?...
  17. 5g理论速度_5G的速度到底能有多快?
  18. Eclipse12:CookieSession
  19. 高级刀片服务器系统,刀片服务器系统
  20. 算法:数字的排列组合问题

热门文章

  1. 地下城与勇士鬼剑士觉醒java_地下城与勇士之鬼剑士觉醒单机版
  2. Python读取zip文件中的图片(无需解压)
  3. python画误差图_Python数据可视化:如何创建误差图
  4. Javaweb回炉简要学习笔记
  5. matlab常用代码(读取文件、批量导入数据、与或非)
  6. 超微服务器硬盘红灯_服务器硬盘亮红灯崩溃怎么办?数据丢失都是怎么找回的...
  7. 服务器迁移域名和证书要改什么用,服务器数据迁移方案介绍 怎样更换网站域名?...
  8. 走近棒球运动·韩国职业棒球联盟·MLB棒球创造营
  9. Android中设置字体居中,【Android】TextView中不同大小字体如何上下垂直居中?
  10. 泰科MDO3034示波器波形FFT分析及数据导出