分析:x=1234567.求其前四位数: log10(x)=log10(1.234567)+6. 所以1.234567=10^(log10(x)-6). 1234 =(int) 10^(log10(x)-6)*1000. [6=length-4,length=(int)log10(x)+1]同时我们知道:

对于小于10000的数字可以存储在数组中直接输出,大于等于10000的数字则用上式计算。我们能知道:i<21 f[i]<1e4.当n=21时[(1-sqrt(5))/2]^n --> 0.618^n 0.618自乘5次就会退一个10进制等级。所以n>=21可以忽略[(1-sqrt(5))/2]^n。log10(x)=log10[ 1/sqrt(5)*[(1+sqrt(5))/2]^n ]=log10(1/sqrt(5))+n*log10(1+sqrt(5))/2).

例如:

log10(12345678)=log10(1.2345678*10^7)=log10(1.2345678)+7

log10(1.2345678)就是log10(12345678)的小数部分.

log10(1.2345678)=qs

10^qs=1.2345678,

要求该数的前4位,则将 1.2345678*1000即可。

#include

#include

#include

using namespace std;

const int maxn=50; //,mod=1e4;

int f[maxn];

int main()

{

f[0]=0;

f[1]=1;

for(int i=2;i<21;i++){

f[i]=f[i-1]+f[i-2]; //i<21 f[i]<1e4.

}

int n;

double q1=log10(1/sqrt(5)),q2=log10((1+sqrt(5))/2);

while(cin>>n){

if(n<21){ printf("%d\n",f[n]); continue; }

double t=q1+n*q2;

double p=t-(int)t;

double ans1=pow(10,p);

cout<

}

return 0;

}

&lbrack;hdu 1568&rsqb; Fibonacci数列前4位

2007年到来了.经过2006年一年的修炼,数学神童zouyu终于把0到100000000的Fibonacci数列(f[0]=0,f[1]=1;f[i] = f[i-1]+f[i-2](i>=2 ...

HDU 1568 Fibonacci【求斐波那契数的前4位&sol;递推式】

Fibonacci Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Proble ...

HDU 1568 Fibonacci 数学&equals; &equals; 开篇

题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1568 分析:一道数学题 找出斐波那契数列的通项公式,再利用对数的性质就可得到前几位的数 斐波那契通项公 ...

hdu 1568 Fibonacci 快速幂

Fibonacci Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Proble ...

hdu 1568 Fibonacci 数学公式

Fibonacci Problem Description 2007年到来了.经过2006年一年的修炼,数学神童zouyu终于把0到的Fibonacci数列(f[0]=0,f[1]=1;f[i] = ...

HDU 1568 Fibonacci

题解:首先,对于小于10000的斐波那契数,我们直接计算,当大于10000时,用公式,由于只要输出前四位,所以不用考虑浮点数的问题,算出其取log的结果: tmp=(log(sq5/5)+n*log( ...

hdu 4099 Revenge of Fibonacci 大数&plus;压位&plus;trie

最近手感有点差,所以做点水题来锻炼一下信心. 下周的南京区域赛估计就是我的退役赛了,bless all. Revenge of Fibonacci Time Limit: 10000/5000 MS ...

用PL0语言求Fibonacci数列前m个中偶数位的数

程序说明:求Fibonacci数列前m个中偶数位的数: 这是编译原理作业,本打算写 求Fibonacci数列前m个数:写了半天,不会写,就放弃了: 程序代码如下: var n1,n2,m,i; pro ...

HDU 3117 Fibonacci Numbers(围绕四个租赁斐波那契,通过计&plus;&plus;乘坐高速动力矩阵)

HDU 3117 Fibonacci Numbers(斐波那契前后四位,打表+取对+矩阵高速幂) ACM 题目地址:HDU 3117 Fibonacci Numbers 题意:  求第n个斐波那契数的 ...

随机推荐

node、npm、gulp、bower、ionic下载及安装

node: http://nodejs.cn/ npm: 随node一起安装了 gulp: http://www.gulpjs.com.cn/docs/getting-started/ bower: ...

论python中的作用域

编程语言从早至今,可以分为面向过程编程.面向函数编程和面向对象编程.BASIC语言是典型的面向过程编程的语言,C语言支持面向函数编程,但不支持面向对象,JAVA只支持面向对象编程,python同时支持 ...

MD5加密类方法

package com.shkj.android.utils; import java.security.MessageDigest;import java.security.NoSuchAlgori ...

CPU affinity 进程和线程的亲缘性

设置Processor Affinity 作用: 1.进程和线程的亲缘性(affinity),使进程或线程在指定的CPU(核)上运行.(比如程序A,在第4个核心上运行) 2.设置进程 或者 线程, 使 ...

CSS权威指南学习笔记 —— 初步认识CSS

层叠样式表(Cascading Style Sheets,CSS)可以影响文档的表现.CSS是依附于文档的,如果不存在某种文档,CSS基本上是没有用的. 为什么会有CSS 在web早期(1990-19 ...

C&plus;&plus;运算符重载为非成员函数

#include using namespace std; class Complex{ public: Complex(double r=0.0,double i=0 ...

junit测试模板 unit-test

一个项目能否发布上线,重要的环节就是测试.经过集成测试.性能测试.压力测试等不断循环的测试过后依据测试报告来确定上线.这些由专业的测试人员来完成,因此会导致程序开发者对自身的单元测试的弱化.若在代码中 ...

Git - git status - 查看当前仓库状态

索引: 目录索引 参看代码 GitHub: git.txt 一.示例: git status 二.说明: 1."status" 部分 该命令可以查出当前分支文件变更状态, 可以查出 ...

Mybatis中 collection 和 association 的区别?

public class A{ private B b1; private List b2;} 在映射b1属性时用association标签,(一对一的关系) 映射b2时用colle ...

斐波那契数列大数的压位c语言,HDU 1568 Fibonacci(大数前4位)相关推荐

  1. python编写递归函数、求斐波那契数列第n项_用Python实现求Fibonacci数列的第n项

    1. 背景--Fabonacci数列的介绍(摘自百度百科): 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacc ...

  2. 斐波那契数列除以10007的余数C语言,C语言之不一样的斐波那契数列

    图片发自简书App 问题描述 Fibonacci数列的递推公式为:F(n)=F(n-1)+F(n-2),其中F(1)=F(2)=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余 ...

  3. 【C语言】斐波那契数列,依次输出1 1 2 3 5 13等前10个数

    #include <stdio.h> int main() {int f1=1,f2=1,f3=1;int i; printf("%d %d ",f1,f2);for( ...

  4. 黄金连分数(斐波那契数列、大数运算)正确解法

    标题: 黄金连分数     黄金分割数0.61803... 是个无理数,这个常数十分重要,在许多工程问题中会出现.有时需要把这个数字求得很精确. 对于某些精密工程,常数的精度很重要.也许你听说过哈勃太 ...

  5. 用递归法计算斐波那契数列的第n项

     斐波纳契数列(Fibonacci Sequence)又称黄金分割数列,指的是这样一个数列:1.1.2.3.5.8.13.21.--在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1, ...

  6. 剑指offer_第7题_斐波那契数列

    题目描述 现在要求输入一个整数n 输出斐波那契数列的第n项(从0开始,第0项为0). n<=39 理解 斐波那契数列 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子 ...

  7. 编程之美2.9 斐波那契数列

    斐波那契数列是我们在学习C语言的时候,在递归那一章的经典实例,当然,还会有汉诺塔的例子. 这个问题时这样定义的: 0 (x <= 0) f(x)   =  1 (x == 1) f(x - 1) ...

  8. java从键盘输入数据斐波那契数_从键盘输入一个正整数n,打印出斐波那契数列的前n个元素...

    import java.util.*; public class Test { public static void main(String[] args){ Scanner in = new Sca ...

  9. 牛客网(剑指offer) 第七题 斐波那契数列

    //问题描述: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. n<=39 function Fibonacci($n){//显然递归超时了 2333333333 ...

最新文章

  1. 个人网站架构设计(一)
  2. 资讯|WebRTC M94 更新
  3. HashMap 的底层
  4. 关于kgm文件的解码
  5. 敏捷开发快速入门(四):Scrum开发流程
  6. centos 搭建 SVN
  7. python如何画神经网络特征图
  8. 自助提取公积金(北京)
  9. 消费者人群画像 python_一步一步教你分析消费者大数据
  10. 自旋锁为什么不适用于单处理器系统
  11. android 包命名不管你怎么命,千万不要用下面几个
  12. excel每页打印标题
  13. 前端项目总结:客运互联网售票平台
  14. 一文总结 Shiro 实战教程
  15. 关于numpy,torch中seed()方法的一些理解
  16. 算法与数据结构(第一周)——线性查找法
  17. matlab中通过pcwrite将xyz数据转换成pcd格式文件
  18. Graphx图算法介绍
  19. win10启动linux蓝屏,系统之家重装 win10启动蓝屏0xc000021a如何修复
  20. 安装 VS2012/2013 完成时报错“无法建立到信任根颁发机构的证书链”

热门文章

  1. Operations Manager 2007 监控Active Directory SCOM-Part 3
  2. 初探webpack之从零搭建Vue开发环境
  3. scratch绘制多边形_如何使用Scratch 3绘制矢量图形
  4. bash 脚本编写_如何在Bash中编写循环
  5. android开源2016_2016年开源领域的7大法律发展
  6. 采访拍摄镜头技巧_采访开放文化公司的6个技巧
  7. system health_Health Hack 2014:开源,开放数据和跨学科协作的力量
  8. Bootstrap3 轮番插件的使用方法
  9. Bootstrap翻页组件
  10. PX4 编译分析之Airframe文档生成