zoukankan      html  css  js  c++  java
  • hdu 5351 规律+大数

    题目大意:定义了一种fib字符串,问第n个fib串的前m个字母前后相等串的最大长度,大约就是这样的

    其实主要读完题意的时候并没有思路,但是列几个fib字符串就会发现,除了fib1以外,所有串的前面都是一样的,后面的串就只是在前面串的基础上再贴一个串而已,因此很明显,这里的n其实读下来并没有什么用,基本只是用来告诉我们总串长是第1000个fib数列的数,因此要大数,我就试着写了java大数。然后这个结果就直接列一些,打表就会发现规律了```然后就没有然后了。恩,别忘了mod

     1 import java.math.BigInteger;
     2 import java.util.*;
     3 import java.io.*;
     4 public class Main{
     5     static BigInteger fib[] = new BigInteger[1005];
     6     static BigInteger Mod=new BigInteger("258280327");
     7     public static void init(){
     8         fib[1]=new BigInteger("1");
     9         fib[2]=new BigInteger("1");
    10         for(int i=3;i<=1000;++i){
    11             fib[i]=fib[i-1].add(fib[i-2]);
    12         }
    13     }
    14     public static void main(String[] args){
    15         Scanner input = new Scanner(System.in);
    16         init();
    17         int T=input.nextInt();
    18         while(T--!=0){
    19             int n=input.nextInt();
    20             BigInteger m=input.nextBigInteger();
    21             m=m.add(BigInteger.ONE);
    22             int i;
    23             for(i=1;i<=1000;++i){
    24                 int f=m.compareTo(fib[i]);
    25                 if(f<0)break;
    26             }
    27             System.out.println((m.subtract(fib[i-2].add(BigInteger.ONE))).mod(Mod));
    28         }
    29         input.close();
    30     }
    31 }
    View Code

    java大数还是非常好的恩```

  • 相关阅读:
    各数据库连接maven配置
    在 windows 下配置 git 公共库
    java笔记2(观察者模式、内部类、输入输出)
    linux 常用命令的应用笔记
    Setting Up Google Code And Github With Git
    java笔记3(单元测试中的模式)
    Apache的配置
    Ubuntu安装常用工具
    MongoDB笔记1(安装配置、用户管理、查询与SQL比较)
    Redis的安装与配置
  • 原文地址:https://www.cnblogs.com/cenariusxz/p/4718837.html
Copyright © 2011-2022 走看看