HOJ 2148&POJ 2680(DP递推,加大数运算)
Computer Transformation
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 4561 Accepted: 1738
Description
A sequence consisting of one digit, the number 1 is initially written into a computer. At each successive time step, the computer simultaneously tranforms each digit 0 into the sequence 1 0 and each digit 1 into the sequence 0 1. So, after the first time step, the sequence 0 1 is obtained; after the second, the sequence 1 0 0 1, after the third, the sequence 0 1 1 0 1 0 0 1 and so on.
How many pairs of consequitive zeroes will appear in the sequence after n steps?
Input
Every input line contains one natural number n (0 < n <= 1000).
Output
For each input n print the number of consequitive zeroes pairs that will appear in the sequence after n steps.
Sample Input
2
3
Sample Output
1
1
Source
这是我第一次用java进行大数运算
递推很简单,00只可能是上一个的01产生,上一个的01只可能是上上一个的00 1产生
hoj的测试机好像有问题,poj里面ac的代码提交不上去hoj
import java.math.BigInteger;
import java.util.Scanner;
/**
*
* @author chenyongkang
*/
public class Main {
public static BigInteger a;
public static BigInteger b[]=new BigInteger[1010];
public static void init()
{
BigInteger x=BigInteger.valueOf(0);
BigInteger y=BigInteger.valueOf(1);
for(int i=0;i<=1000;i++)
b[i]=BigInteger.valueOf(0);
b[1]=x;b[2]=y;
for(int i=3;i<=1000;i++)
{
a=BigInteger.valueOf(1);
for(int j=1;j<=i-3;j++)
{
a=a.multiply(BigInteger.valueOf(2));
}
b[i]=b[i].add(b[i-2]);
b[i]=b[i].add(a);
}
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
init();
Scanner cin=new Scanner(System.in);
while(cin.hasNext())
{
int n=cin.nextInt();
System.out.println(b[n]);
}
}
}
HOJ 2148&POJ 2680(DP递推,加大数运算)的更多相关文章
- uva 10328 - Coin Toss 投硬币(dp递推,大数)
题意:抛出n次硬币(有顺序),求至少k个以上的连续正面的情况的种数. 思路:转换成求抛n个硬币,至多k-1个连续的情况种数,用所有可能出现的情况种数减去至多k-1个的情况,就得到答案了.此题涉及大数加 ...
- hdu2089(数位DP 递推形式)
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- UVA 10559 Blocks(区间DP&&递推)
题目大意:给你玩一个一维版的消灭星星,得分是当前消去的区间的长度的平方,求最大得分. 现在分析一下题目 因为得分是长度的平方,不能直接累加,所以在计算得分时需要考虑前一个状态所消去的长度,仅用dp[l ...
- poj 2506 Tiling 递推
题目链接: http://poj.org/problem?id=2506 题目描述: 有2*1和2*2两种瓷片,问铺成2*n的图形有多少种方法? 解题思路: 利用递推思想,2*n可以由2*(n-1)的 ...
- hdu 2604 Queuing(dp递推)
昨晚搞的第二道矩阵快速幂,一开始我还想直接套个矩阵上去(原谅哥模板题做多了),后来看清楚题意后觉得有点像之前做的数位dp的水题,于是就用数位dp的方法去分析,推了好一会总算推出它的递推关系式了(还是菜 ...
- Power oj2498/DP/递推
power oj 2498 /递推 2498: 新年礼物 Time Limit: 1000 MS Memory Limit: 65536 KBTotal Submit: 12 Accepted: 3 ...
- BZOJ4321queue2——DP/递推
题目描述 n 个沙茶,被编号 1~n.排完队之后,每个沙茶希望,自己的相邻的两 人只要无一个人的编号和自己的编号相差为 1(+1 或-1)就行: 现在想知道,存在多少方案满足沙茶们如此不苛刻的条件. ...
- Shell Necklace (dp递推改cdq分治 + fft)
首先读出题意,然后发现这是一道DP,我们可以获得递推式为 然后就知道,不行啊,时间复杂度为O(n2),然后又可以根据递推式看出这里面可以拆解成多项式乘法,但是即使用了fft,我们还需要做n次多项式乘法 ...
- hdu 1723 DP/递推
题意:有一队人(人数 ≥ 1),开头一个人要将消息传到末尾一个人那里,规定每次最多可以向后传n个人,问共有多少种传达方式. 这道题我刚拿到手没有想过 DP ,我觉得这样传消息其实很像 Fibonacc ...
随机推荐
- 【2018年12月05日】滚动市盈率PE最低排名
深康佳A(SZ000016) - 滚动市盈率PE:1.69 - 滚动市净率PB:1.13 - 滚动年化股息收益率:4.31% - 消费电子产品 - 深康佳A(SZ000016)的历史市盈率走势图 新钢 ...
- SQL Compare数据库比较工具 完全破解+使用教程
来源http://www.cnblogs.com/duci/articles/4482665.html 一.使用教程 SQL Compare是编程人员常用的比较两个数据库之间差异的工具.可以用来比较数 ...
- OpenVPN多处理之-多队列TUN多实例
两年前我以前提到了多个OpenVPN共享一个tun虚拟网卡,旨在降低管理开销和切换开销,由于我讨厌在外面对一大堆网卡做Bridge或者Bonding,除了初衷不同,其实的关于TUN的进展一直没有偏离我 ...
- Java通过复选框控件数组实现添加多个复选框控件
编写程序,通过复选框控件数组事先选择用户爱好信息的复选框,在该程序中,要求界面中的复选框数量可以根据指定复选框名称的字符串数组的长度来自动调节. 思路如下: 创建JPanel面板对象: 使用JPane ...
- bodgeit测试平台
下载war安装包:https://code.google.com/archive/p/bodgeit/downloads http://resources.infosecinstitute.com/t ...
- mssql注入指令
and exists (select * from sysobjects) //判断是否是MSSQL and exists(select * from tableName) //判断某表是否存在..t ...
- 【转】java文件操作大全
一.获得控制台用户输入的信息 public String getInputMessage() throws IOException...{ System.out.println(&qu ...
- 微信小程序实例源码大全2
wx-gesture-lock 微信小程序的手势密码 WXCustomSwitch 微信小程序自定义 Switch 组件模板 WeixinAppBdNovel 微信小程序demo:百度小说搜索 sh ...
- JS 验证URL
var strVal = $("#urlText").val(); var Expression = "^((https|http|ftp|rtsp|mms)?://)& ...
- 【docker】使用docker 安装 宝塔面板
拉取centos基础镜像,用容器启动该基础镜像,直接在这个容器中部署 1 拉取纯净系统镜像 docker pull centos: 2 启动镜像,映射主机与容器内8888端口 docker run - ...