解题报告:求 斐波那契数,不过这题的n的范围是1000,肯定是早就超过了的,所以要用到高精度,所以这题其实就是一个加法高精度的题。

我的做法 是写一个大数相加的函数,然后打表就是了,这里注意的就是每次做了大数相加之后任然保留倒序的数存在表里面,这样以便下次相加的时候直接加,而不用把顺序翻来翻去很麻烦,这样只要在输出的时候把顺序倒过来就可以 了。

 #include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
const int maxn = +;
char ans[][];
char* add(const char *s1,const char* s2) {
int len1 = strlen(s1);
int len2 = strlen(s2);
int a1[maxn],a2[maxn];
memset(a1,,sizeof(a1));
memset(a2,,sizeof(a2));
for(int i = ;i<len1;++i)
a1[i] = s1[i]-'';
for(int i= ;i<len2;++i)
a2[i] = s2[i]-'';
int M = max(len1,len2);
for(int i = ;i<=M;++i) {
a1[i] += a2[i];
a1[i+] += a1[i]/;
a1[i] %= ;
}
if(a1[M] != )
M++;
char s3[maxn];
for(int i = ;i<M;++i)
s3[i] = a1[i]+'';
s3[M] = NULL;
return s3;
}
void dabiao() {
ans[][] = ans[][] = '';
ans[][] = ans[][] = NULL;
for(int i = ;i<=;++i)
strcpy(ans[i],add(ans[i-],ans[i-]));
} int main() {
int T,n;
dabiao();
scanf("%d",&T);
while(T--) {
scanf("%d",&n);
int len = strlen(ans[n]);
for(int i = len-;i>=;--i)
printf("%c",ans[n][i]);
puts("");
}
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 大菲波数

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

  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

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

  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. HDU 1715 大菲波数

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

随机推荐

  1. FastReport 变量列表使用

    使用报表变量时,引用“frxVariables”单元. 变量定义在“TfrxVariable” 类: TfrxVariable = class(TCollectionItem) published p ...

  2. Genymotion-ARM-Translation_v1.1安装报“an error occured while deploying the file”

    如上图,在将Genymotion-ARM-Translation_v1.1.zip拖动Genymotion虚拟机中报了图中错误,在百度后找到了解决办法,下面是我的操作步骤 1.下载re管理器之类的ap ...

  3. python查询mysql以字典返回

    # *_*coding:utf-8 *_* import pymysql conn = pymysql.connect(host='192.168.33.10', user='root', passw ...

  4. [知乎]老狼:UFS VS NVMe

    https://zhuanlan.zhihu.com/p/26652622 最近某手机厂商的闪存门在知乎上被人踢爆,在所谓“爵士水军”和“友商水军”的口水大战中,至少eMMC, UFS等火星名词被广泛 ...

  5. Java 使用 Dbutils 工具类库 操作mysql

    Dbutils 官网http://commons.apache.org/proper/commons-dbutils/ 结合我个人写的JDBCUtils 写的 Dbutils 的使用demo . JD ...

  6. 【.Net】c# 让double保留两位小数

    1.Math.Round(0.333333,2);//按照四舍五入的国际标准2.    double dbdata=0.335333;    string str1=String.Format(&qu ...

  7. 查看临时表空间占用最多的用户与SQL

     select sess.username, sql.sql_text, sort1.blocks   from v$session sess, v$sqlarea sql, v$sort_usage ...

  8. RocketMQ生产者消息篇

    系列文章 RocketMQ入门篇 RocketMQ生产者流程篇 RocketMQ生产者消息篇 前言 上文RocketMQ生产者流程篇中详细介绍了生产者发送消息的流程,本文将重点介绍发送消息的通信模式以 ...

  9. 如何使用android design support library

    Android应用Design Support Library完全使用实例 - OPEN 开发经验库http://www.open-open.com/lib/view/open143338585611 ...

  10. 目标检测应用化之web页面(YOLO、SSD等)

    在caffe源码目录下的examples下面有个web_demo演示代码,其使用python搭建了Flask web服务器进行ImageNet图像分类的演示. 首先安装python的依赖库:pip i ...