zoukankan      html  css  js  c++  java
  • POJ 1220 NUMBER BASE CONVERSION(进制转换,大数)

    输入输入如题面,注意对0的处理,然后Java大数真好用。

    import java.math.BigInteger;
    import java.util.Arrays;
    import java.util.*;
    import java.io.*;
    
    public class Main{
        static int valOfChar(char a){
            if(a>='0'&&a<='9')return a-'0';
            else if(a>='A'&&a<='Z')return a-'A'+10;
            else return a-'a'+36;
        }
        static char valOfInt(int a){
            if(a<10)return (char)(a+'0');
            else if(a<36)return (char)(a-10+'A');
            else return (char)(a-36+'a');
        }
        static int valOfSt(String a){
            int ans = 0;
            for(int i = 0 ; i < a.length() ; ++i){
                ans = ans*10+a.charAt(i)-'0';
            }
            return ans;
        }
        public static void main(String args[]) {
            int T;
            Scanner cin = new Scanner(System.in);
            String in;
            BigInteger res;
            T = cin.nextInt();
            BigInteger A,B;
            int a,b;
            while (T--!=0){
                res = BigInteger.valueOf(0);
                a = cin.nextInt();
                A = BigInteger.valueOf(a);
                b = cin.nextInt();
                B = BigInteger.valueOf(b);
                in = cin.next();
                for(int i = 0 ; i < in.length() ; ++i){
                    res = res.multiply(A).add(BigInteger.valueOf(valOfChar(in.charAt(i))));
                }
                Stack<Character>deal = new Stack<Character>();
                while (res.compareTo(BigInteger.ZERO)>0){
                    deal.push(valOfInt(valOfSt(res.mod(B).toString())));
                    res = res.divide(B);
                }
                System.out.println(a+" "+in);
                System.out.print(b+" ");
                if(deal.empty())System.out.print(0);
                while (!deal.empty())System.out.print(deal.pop());
                System.out.println('
    ');
            }
        }
    }

    总之,难受。。

  • 相关阅读:
    SQL Server数据库中批量导入数据
    SQL里面也能用Split()
    MSSQL发送邮件
    Asp.Net简单的发邮件功能
    十大措施保证系统安全性
    WebDriver测试web中遇到的弹出框或不确定的页面
    WebDriver数据驱动模式
    nginx 优化(转)
    配置虚拟目录出错
    14152学期校内岗招聘信息
  • 原文地址:https://www.cnblogs.com/DevilInChina/p/9440547.html
Copyright © 2011-2022 走看看