题解 | #进制转换#

进制转换

https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6

import java.util.Scanner;
import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String s = in.nextLine();
            String[] sArray = s.split("x");
            String res = sArray[1];
            Map<String,Integer> map = new HashMap();
            map.put("A",10);
            map.put("B",11);
            map.put("C",12);
            map.put("D",13);
            map.put("E",14);
            map.put("F",15);
            int num = 0;
            int x = 1;
            for(int i=res.length()-1;i>=0;i--){
                String temp = res.substring(i,i+1);
                if(map.get(temp)==null){
                    num = num + Integer.valueOf(temp)*x;
                }else{
                    num = num + map.get(temp) * x;
                }
                x*=16;
            }
            System.out.println(num);

        }
    }
}

全部评论

相关推荐

10-31 14:54
已编辑
门头沟学院 算法工程师
点赞 评论 收藏
分享
耀孝女:就是你排序挂了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务