/*

中文题意:

中文翻译:

题目大意:求1000以内的菲波数。

解题思路:用大数来计算。用二维数组来存数。

难点具体解释:用二维数组存数,開始的一维存的是1000个Pi,后面那一维是用来存数字的。

关键点:大数高精度算法

解题人:lingnichong

解题时间:2014/7/31    20:42        改动日期:2014/08/01    00:31

解题感受:

*/

大菲波数

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

Total Submission(s): 11213    Accepted Submission(s): 3802
Problem Description
Fibonacci数列,定义例如以下:

f(1)=f(2)=1

f(n)=f(n-1)+f(n-2) n>=3。

计算第n项Fibonacci数值。
 
Input
输入第一行为一个整数N,接下来N行为整数Pi(1<=Pi<=1000)。
 
Output
输出为N行,每行为相应的f(Pi)。
 
Sample Input
5
1
2
3
4
5
 
Sample Output
1
1
2
3
5
 

#include<stdio.h>
#include<string.h>
#define Pi 1010
#define MAXN 2500
int f[Pi][MAXN];
int main()
{
int i,j,k;
memset(f,0,sizeof(f));
f[1][0]=f[2][0]=1;
for(i=3;i<Pi;i++)
{
for(j=MAXN-1;j>=0;j--)
if(f[i-1][j]!=0) break;//找到上一个数右边第一个不是0的数的下标
for(k=0;k<=j;k++)
{
f[i][k]+=(f[i-1][k]+f[i-2][k]);//保留进位所得数,所以是+=
if(f[i][k]>=10)
{
f[i][k]-=10;
f[i][k+1]+=1;
}
}
}
int T,n;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
for(i=MAXN-1;(i>=0)&&(f[n][i]==0);i--);
for(;i>=0;i--)
printf("%d",f[n][i]);
printf("\n");
}
return 0;
}

/*

1000的斐波那契数

22

1000

43466557686937456435688527675040625802564660517371780402481729089536555417949051

89040387984007925516929592259308032263477520968962323987332247116164299644090653

3187938298969649928516003704476137795166849228875

999

26863810024485359386146727202142923967616609318986952340123175997617981700247881

68933836965448335656419182785616144335631297667364221035032463485041037768036733

4151172899169723197082763985615764450078474174626

998

16602747662452097049541800472897701834948051198384828062358553091918573717701170

20106551018559589860510409473691887927846223301598102952299783631123261876053919

9036765399799926731433239718860373345088375054249

*/

HDU 1715 大菲波数的更多相关文章

  1. hdu 1715 大菲波数 高精度和运算,水

    1.hdu 1715  大菲波数 2.链接:http://acm.hdu.edu.cn/showproblem.php?pid=1715 3.总结:水 #include<iostream> ...

  2. HDU 1715 大菲波数

    大菲波数 问题描述 : Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2)  n>=3. 计算第n项Fibonacci数值. 输入: 输入第一行为一 ...

  3. HDU——1715大菲波数(大数加法)

    大菲波数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  4. HDU - 1715 - 大菲波数 - JAVA

    http://acm.hdu.edu.cn/showproblem.php?pid=1715 import java.io.*; import java.util.*; import java.mat ...

  5. hdu 1715 大菲波数(高精度数)

    Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3. 计算第n项Fibonacci数值. Inpu ...

  6. hdu 1715 大菲波数(大数)

    题意:整数大数加法 思路:大数模板 #include<iostream> #include<stdio.h> #include<stdlib.h> #include ...

  7. HDU 1715 大菲波数(JAVA, 简单题,大数)

    题目 //BigInteger 和 BigDecimal 是在java.math包中已有的类,前者表示整数,后者表示浮点数 import java.io.*; import java.util.*; ...

  8. hdu 1715 大菲波数_java

    用java的大数解决 import java.math.BigInteger; import java.util.Scanner; public class Main { public static ...

  9. HDOJ 1715 大菲波数

    Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3. 计算第n项Fibonacci数值. Inpu ...

随机推荐

  1. Layui框架+PHP打造个人简易版网盘系统

    网盘系统   大家应该都会注册过致命的一些网盘~如百度云.百科介绍:网盘,又称网络U盘.网络硬盘,是由互联网公司推出的在线存储服务,服务器机房为用户划分一定的磁盘空间,为用户免费或收费提供文件的存储. ...

  2. 【APP问题定位(二)】Charles定位工具

    Charles工具是APP测试中简单有使用的一款测试工具,可以通过捕获request和response的信息初步确定bug的原因所在. 本文将从安装.使用两个方面来介绍. 安装 点击这里进入下载页,注 ...

  3. Java线程面试题

     1:什么是线程?    线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速.比如,如果一个线 ...

  4. [转载] HBase vs Cassandra:我们迁移系统的原因

    转载自http://www.csdn.net/article/2010-11-29/282698 我的团队近来正在忙于一个全新的产品——即将发布的网络游戏www.FightMyMonster.com. ...

  5. [转载] Java实现生产者消费者问题

    转载自http://www.cnblogs.com/happyPawpaw/archive/2013/01/18/2865957.html 引言 生产者和消费者问题是线程模型中的经典问题:生产者和消费 ...

  6. spring+springmvc+mybatis+oracle+atomikos+jta实现多数据源事务管理

    ---恢复内容开始---   在做项目过程中,遇到了需要一个项目中访问两个数据库的情况,发现使用常规的spring管理事务,导致事务不能正常回滚,因此,采用了jta+atomikos的分布式数据源方式 ...

  7. 解决弹出蒙层滑动穿透问题-vue

    最近开发过程中遇到一些小问题(似乎问题总是那么多),但一直没什么时间去优化与解决.程序员不能被业务绑架,有时间还是花点在代码上

  8. linux服务器使用yum安装nginx

    一,安装nginx和php-fpm yum install nginx php-fpm 二, 找到nginx.conf find / -name nginx.conf 三,添加解析php配置 在ser ...

  9. 在SQL Server Express版本中没有代理功能如何自动备份数据库

    因为是免费的且单个数据库可以支持到10GB,对于一般企业完全足够了,也就将就使用了,备份将分为两步: 1.创建备份脚本 2.创建系统的计划任务进行每天的备份 详细做法如下: 1.创建备份脚本 打开SS ...

  10. System.UnauthorizedAccessException 错误

    给目录添加 "Authenticated Users" 这个用户的 读写权限