大菲波数

问题描述 :

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

输入:

输入第一行为一个整数N,接下来N行为整数Pi(1<=Pi<=1000)。

输出:

输出为N行,每行为对应的f(Pi)。

样例输入:

5
1
2
3
4
5

样例输出:

1
1
2
3
5

思路同博客中上一道题1042 N!  均是大数加法原则,考虑到位数较多,所以采用数组。一维数组可以么?可以,但考虑到较为繁琐。所以采用二维数组,a[i][j] 其中i 表示 整数pi , j表示求得结果的位数。本题同样采用10进制,逢十进一。(有的程序可能去除以自己定义的数100,1000,10000等等)。

#include<iostream>
#include<cstring>
using namespace std;
int f[][];
int main()
{
int m;
int n;
cin>>n;
memset(f,,sizeof(f));
f[][]=;
f[][]=;
for(int i=;i<;i++)
{
for(int j=;j<;j++)
{
f[i][j]+=f[i-][j]+f[i-][j];//+=号别错了 因为考虑到f[i][j]可能是之前计算的进位
if(f[i][j]>=)
{
f[i][j+]=f[i][j]/;//注意此处不要颠倒
f[i][j]=f[i][j]%;
}
}
}
while(n--)
{
cin>>m;
int flag=;//控制输出的
for(int i=;i>=;i--)//考虑到进位可能比较多所以稍大点
{
if(flag==&&f[m][i]!=)
flag=;
if(flag)
cout<<f[m][i];
}
cout<<endl;
} return ;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

  7. hdu 1715 大菲波数_java

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

  8. HDU 1715 大菲波数

    /* 中文题意: 中文翻译: 题目大意:求1000以内的菲波数. 解题思路:用大数来计算.用二维数组来存数. 难点具体解释:用二维数组存数,開始的一维存的是1000个Pi,后面那一维是用来存数字的. ...

  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. ReactiveCocoa的使用方法

    http://www.open-open.com/lib/view/open1440060663129.html best praticse https://github.com/ReactiveCo ...

  2. span和div的区别

    <span> 在CSS定义中属于一个行内元素,在行内定义一个区域,也就是一行内可以被 <span> 划分成好几个区域,从而实现某种特定效果. <span> 本身没有 ...

  3. UVa10023手动开大数平方算法

    题目链接:UVa 10023 import java.math.BigInteger; import java.util.Scanner; public class Main { public sta ...

  4. 暴力枚举-数长方形(hdu5258)

    数长方形 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  5. AngularJs Test demo &front end MVVM implementation conjecture and argue.

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  6. Ruby操作Excel的方法与技巧大全

    测试工作中,批量的数据通常会放到excel表格中,测试输出的数据写回表格中,这样输入输出易于管理,同时清晰明了 使用ruby来操作excel文件首先需要在脚本里包含以下语句 require'win32 ...

  7. HDU 4900 NO ACM NO LIFE(概率+枚举+搜索)(2014 Multi-University Training Contest 4)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4900 Problem Description There is an old country and ...

  8. windows系统调用 线程创建

    #include "windows.h" #include "iostream" using namespace std; class CWorkerThrea ...

  9. php扩展的基本安装

    phpize ./config --with-php-config=.. make&make install php.ini

  10. paper 42 :图像的小波变换

    关于小波变换我只是有一个很朴素了理解.不过小波变换可以和傅里叶变换结合起来理解. 傅里叶变换是用一系列不同频率的正余弦函数去分解原函数,变换后得到是原函数在正余弦不同频率下的系数. 小波变换使用一系列 ...