zoukankan      html  css  js  c++  java
  • Java大数练习第二弹

    hdu1250 水题 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1250

    import java.util.*;
    import java.math.BigInteger;
    public class Main{
        public static void main(String[] args){
            int a;
            Scanner in=new Scanner(System.in);
            while(in.hasNext()){
                a=in.nextInt();
                BigInteger[] num=new BigInteger[10000];
                num[1]=BigInteger.ONE;
                num[2]=BigInteger.ONE;
                num[3]=BigInteger.ONE;
                num[4]=BigInteger.ONE;
                for(int i=5;i<=a;i++){
                    
                    num[i]=(num[i-1]).add(num[i-2]).add(num[i-3]).add(num[i-4]);
                
                }
                System.out.println(num[a]);
            }
        }
    }

    hdu1297 递推求解  题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1297

    
    import java.util.*;
    import java.math.BigInteger;
    public class Main{
        public static void main(String[] args){
            Scanner in= new Scanner(System.in);
            int a;
            BigInteger[] b= new BigInteger[1010];
            b[1]=BigInteger.ONE;
            b[2]=BigInteger.valueOf(2);
            b[3]=BigInteger.valueOf(4);
            b[4]=BigInteger.valueOf(7);
            while(in.hasNext()){
                a=in.nextInt();
                if(a<5)
                    System.out.println(b[a]);
                else{
                    for(int i=5;i<=a;i++){
                        b[i]=b[i-1].add(b[i-2]).add(b[i-4]);
                    }
                    System.out.println(b[a]);
                }
            }
            
        }
    }
    
    

    hdu1715 水题 题目链接 http://acm.hdu.edu.cn/showproblem.php?

    pid=1715

    import java.util.*;
    import java.math.BigInteger;
    public class Main{
        public static void main(String[] args){
            Scanner in= new Scanner(System.in);
            BigInteger[] b= new BigInteger[1010];
            b[1]=BigInteger.valueOf(1);
            b[2]=BigInteger.valueOf(1);
            for(int i=3;i<=1000;i++){
                b[i]=b[i-1].add(b[i-2]);
            }
            int n=in.nextInt();
            while(n-->0){
                int text=in.nextInt();
                System.out.println(b[text]);
            }
        }
    }

    hdu1753 高精度小数求和  题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1753

    import java.util.*;
    import java.math.BigDecimal;
    public class Main{
        public static void main(String[] args){
            Scanner in= new Scanner(System.in);
            BigDecimal a,b;
            while(in.hasNext()){
                a=in.nextBigDecimal();
                b=in.nextBigDecimal();
                BigDecimal c=a.add(b);
                 String res = c.stripTrailingZeros().toPlainString(); //stripTrailingZeros()去除后面多余的零
                                                                      //toPlainString(),取消科学计数法表示
                   System.out.println(res);
            }
        }
    }

    hdu  1865 找规律 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1865

    import java.util.*;
    import java.math.*;
    public class Main{
        public static void main(String[] args){
            Scanner in= new Scanner(System.in);
            int a;
            String test;
            a=in.nextInt();
            BigInteger[] num= new BigInteger[210];
            num[1]=BigInteger.ONE;
            num[2]=BigInteger.valueOf(2);
            num[3]=BigInteger.valueOf(3);
            while(a-->0){
                test=in.next();
                int n=test.length();
                if(n<4)
                    System.out.println(num[n]);
                else
                {
                    for(int i=4;i<=n;i++){
                        num[i]=num[i-1].add(num[i-2]);
                    }
                    System.out.println(num[n]);
                }
                
            }
        }
    }

    hdu 2100  进制转换,。方法可能比較麻烦 只是也熟练了很多java的使用方法。

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2100

    import java.util.*;
    import java.math.*;
    public class Main{
        public static BigInteger mpow(int b){ //自己写的求幂函数 
            BigInteger ans=BigInteger.ONE;
            for(int i=0;i<b;i++){
                ans=ans.multiply(BigInteger.valueOf(26));
            }
            return ans;
        }
        public static String change(BigInteger num){
            char[] line=new char[250];
            int cnt=0;
            while(num.compareTo(BigInteger.ZERO)!=0){
                BigInteger a=num.mod(BigInteger.valueOf(26));
                num=num.divide(BigInteger.valueOf(26));
                line[cnt++]=(char)(a.intValue()+'A'); //将 BigInteger转换成int 
            }
            return String.valueOf(line); //将字符数组转换成 String
        }
        public static void main(String[] args){
            Scanner in= new Scanner(System.in);
            while(in.hasNext()){
                String a,b;
                a=in.next();
                b=in.next();
                BigInteger an=BigInteger.ZERO;
                //System.out.println(a);
                //System.out.println((int)a.charAt(1));
                for(int i=0;i<a.length();i++){
                    an=an.add(BigInteger.valueOf(a.charAt(i)-'A').multiply(mpow(a.length()-i-1)));//String 单个字符显示 用 str.charAt(i);
                }  
                BigInteger bn=BigInteger.ZERO;
                for(int i=0;i<b.length();i++){
                    bn=bn.add(BigInteger.valueOf(b.charAt(i)-'A').multiply(mpow(b.length()-i-1)));
                }  
                BigInteger c=an.add(bn);
                String fin=change(c);
                for(int i=fin.length()-1;i>=0;i--){
                    if(fin.charAt(i)!='')
                    System.out.print(fin.charAt(i));
                }
                System.out.println();
                
            }
        }
    }


  • 相关阅读:
    解决maven update project 后项目jdk变成1.5的问题
    applicationContext-common.xml]; nested exception is java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
    SQL0668N 不允许对表"xxx"执行操作,原因码为 "1"
    maven下的jar项目打包的方法
    spring security 4.2后出现CouldnotverifytheprovidedCSRFtokenbecauseyoursessionwasnotfound
    maven-javadoc-plugin 出现错误Unsupported major.minor version 51.0
    通过 Spring Security配置 解决X-Frame-Options deny 造成的页面空白 iframe调用问题
    yaml模块
    centos 下 yum安装python3
    Python 之ConfigParser模块
  • 原文地址:https://www.cnblogs.com/llguanli/p/8476971.html
Copyright © 2011-2022 走看看