首页 > 学院 > 开发设计 > 正文

POJ 2506 Tiling (大数+递推)

2019-11-14 13:07:58
字体:
来源:转载
供稿:网友

题目链接:

http://poj.org/PRoblem?id=2506


题目大意:


解题过程:

看到题目描述的图片就想到了贪心实验题里面的骨牌问题,不过这个稍微改了一点,思路有了就不难了。然后剩下是大数的问题,首先想用Python来着,然后POJ不支持,只好拿起来没怎么用过的java,所以这个也当一个大数的模板好了。奇怪的是写好了一直WA,看了别人的代码才发现n=0的时候没处理。 -

题目分析:

推出a[n] = a[n-2]*2 + a[n-1]就完事了。数据用大数处理下。 -

AC代码:

package test;import java.io.*;import java.util.*;import java.math.*;public class Main{ public static void main(String Agrs[]) { BigInteger[] data = new BigInteger[300]; BigInteger two = new BigInteger("2"); Scanner cin = new Scanner(System.in); data[0] = new BigInteger("1"); data[1] = new BigInteger("1"); data[2] = new BigInteger("3"); for (int i = 3; i < 255; i++) { data[i] = (data[i-2].multiply(two).add(data[i-1])); } while (cin.hasNext()) { int n = cin.nextInt(); System.out.println(data[n]); } }}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表