题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

超级烂的写法,小白写法

import java.util.Arrays;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String ip2In = in.nextLine();
        String ip10In = in.nextLine();
        // System.out.print(ip2In);
        String[] ip2InArr = ip2In.split("\\.");
        // System.out.print(Arrays.toString(ip2InArr));
        long ip2Out = 0;
        long pows = 0;
        for (int i = ip2InArr.length - 1; i >= 0; i--) {
            int num = Integer.parseInt(ip2InArr[i]);
            ip2Out += num * Math.pow(2, pows++ * 8);
        }
        System.out.println(ip2Out);
        long ip10InLong = Long.parseLong(ip10In);
        long d = ip10InLong%256;
        long c = (ip10InLong - d)/256%256;
        long b = (ip10InLong - d - c*256)/(256*256)%256;
        long a = (ip10InLong - d - c*256 - b*256*256)/(256*256*256)%256;
        System.out.println(a+"."+b+"."+c+"."+d);
    }
}

全部评论

相关推荐

Twilight_m...:还是不够贴近现实,中关村那块60平房子200万怎么可能拿的下来,交个首付还差不多
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务