import java.util.Scanner; // 注意类名必须为 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 // int a = in.nextInt(); // int b = in.nextInt(); // System.out.println(a + b); String s1 = in.nextLine(); String s2 = in.nextLine(); System.out.println(ip2IpTen(s1)); System.out.println(ipTen2Ip(s2)); } } private static String ip2IpTen(String ip) { StringBuilder sb = new StringBuilder(); String[] ips = ip.split("\\."); for (String ipp : ips) { String ippb = Long.toBinaryString(Long.parseLong(ipp)); while(ippb.length()<8){ ippb = "0" + ippb; } sb.append(ippb); } long ipTen = Long.parseLong(sb.toString(), 2); return String.valueOf(ipTen); } private static String ipTen2Ip(String ipTen) { StringBuilder sb = new StringBuilder(); String ipTenB = Long.toBinaryString(Long.parseLong(ipTen)); while(ipTenB.length()<32){ ipTenB = "0" + ipTenB; } for (int i=0;i<4;i++) { String ippb = ipTenB.substring(i*8, i*8+8); long ipp = Long.parseLong(ippb, 2); sb.append(ipp); if (i<3) { sb.append("."); } } return sb.toString(); } }