hdu5686大数斐波那契
1≤N≤200
3
5
3
8
如果序列是:(111)。可以构造出如下三个新序列:(111), (21), (12)。
#include<iostream>
#include<string>
using namespace std;
string a[];
string add(string x,string y)
{
int n=x.length();
int m=y.length();
if(m>n)//为了方便,令y为短的那个数
{
swap(x,y);
swap(n,m);
}
string ans;
int t=,c=,d=n-;
for(int i=m-;i>=;i--)//对齐最短的,从尾部相加
{
int s=x[d--]-''+y[i]-''+c,flag=;//c用于进位,flag标记是否要进位
if(s>)
{
s=s-;
flag=;//标记要进位
}
ans+=s+'';//赋给新串
if(flag)//需要进位则下一位+1
c=;
else
c=;
}
for(int i=d;i>=;i--)//将长的剩下的赋给新串
{
int s=x[i]+c-'',flag=;
if(s>)
{
s=s-;
flag=;
}
ans+=s+'';
if(flag)
c=;
else
c=;
}
if(c)//最后还剩一位没进
{
ans+=+'';
}
string f;
for(int i=ans.length()-;i>=;i--)//将字符串翻转
f+=ans[i];
return f;
}
int main()
{
a[]="";
a[]="";
for(int i=;i<=;i++)//打表
a[i]=add(a[i-],a[i-]);
int n;
while(cin>>n)
{
cout<<a[n]<<endl;
}
return ;
}
hdu5686大数斐波那契的更多相关文章
- How many Fibs?(poj 2413)大数斐波那契
http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=259#problem/C Description Recall the defi ...
- java大数 斐波那契数列
java大数做斐波那契数列: 思路:1. 2.可以用数组存着 import java.math.BigInteger; import java.util.Scanner; public ...
- HDOJ/HDU 1250 Hat's Fibonacci(大数~斐波拉契)
Problem Description A Fibonacci sequence is calculated by adding the previous two members the sequen ...
- POJ2506:Tiling(递推+大数斐波那契)
http://poj.org/problem?id=2506 #include <iostream> #include <stdio.h> #include <strin ...
- HDOJ/HDU 5686 Problem B(斐波拉契+大数~)
Problem Description 度熊面前有一个全是由1构成的字符串,被称为全1序列.你可以合并任意相邻的两个1,从而形成一个新的序列.对于给定的一个全1序列,请计算根据以上方法,可以构成多少种 ...
- HDOJ/HDU 1865 1sting(斐波拉契+大数~)
Problem Description You will be given a string which only contains '1'; You can merge two adjacent ' ...
- P2626 斐波那契数列(升级版)(合数的质数分解, 大数为素数的概率十分小的利用)
题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: f(1)=1f(1) = 1 f(1)=1 f(2)=1f(2) = 1f(2)=1 f(n)=f(n−1)+f(n−2)f(n) = f ...
- HPU 1471:又是斐波那契数列??(大数取模)
1471: 又是斐波那契数列?? 时间限制: 1 Sec 内存限制: 128 MB 提交: 278 解决: 27 统计 题目描述 大家都知道斐波那契数列吧?斐波那契数列的定义是这样的: f0 = 0; ...
- HDU 1715 (大数相加,斐波拉契数列)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1715 大菲波数 Time Limit: 1000/1000 MS (Java/Others) ...
随机推荐
- shell-特殊变量列表
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n $# 传递给脚本或函数的参数个数. $* 传递给脚本或函数的所有参数.有引号则引号内,作为一个参数传入. $@ 传递 ...
- linux中安装python+selenium+chrome
- Python练手例子(4)
16.一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. 程序分析:请参照程序Python 100例中的第14个例子 #py ...
- javascript的数组之reduce()
reduce()方法对累加器和数组中的每个元素(从左到右)应用到一个函数中,最终得到一个值并返回 const array1 = [1, 2, 3, 4]; const reducer = (accum ...
- java_基础_类加载
类加载:Java命令的作用是启动虚拟机,虚拟机通过输入流,从磁盘上将字节码文件(.class文件)中的内容读入虚拟机,并保存起来的过程就是类加载. 类加载特性 : *在虚拟机的生命周期中一个 ...
- table表格设置边框线为单实线
设置table表格边框为单实线的方法有两种 第一种方法就是利用table标签cellspacing=0属性来实现,cellspacing是内边框和外边框的距离,这种方法实现的看起来是单实线,其实是内边 ...
- promise 的学习
promise 是为了解决异步操作的顺序问题而产生的 特性 promise 的实例一旦创建就会执行里面的异步操作 promise 的实例状态一旦改变就变成凝固的了, 无法再对其作出修改, (不明白为 ...
- Objects First with Java 读书笔记 (1)
umm...这学期被发了助教Java的任务,为了避免误人子弟从零开始现学.课是英语教学,就不逐字翻译了,方便记. 参考书目:Objects First with Java - A Practical ...
- python:Crypto模块的下载
1.下载 Crypto 用于一些加密算法,需要引入的模块 目前做支付宝接口的时候会用到 pip3 install pycryptodome # 该方式是正常的 快速方式:pip3 install -i ...
- Spring Batch(三) Job Launcher、ItemReader、ItemProcessor、ItemWriter各个实现类和用途
内容来自<Spring Batch 批处理框架>,作者:刘相. 1.JobLauncher JobLauncher(作业调度器)是SpringBatch框架提供的运行Job的能力.用过给定 ...