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.hasNextInt()) { // 注意 while 处理多个 case // int a = in.nextInt(); // int b = in.nextInt(); // System.out.println(a + b); // } String ip = in.next(); long num = in.nextLong(); System.out.println(toNum(ip)); System.out.print(toIp(num)); } private static long toNum(String ip) { String[] arr = ip.split("\\."); String biary = ""; for (int i = 0; i < arr.length; i++) { long n = Long.parseLong(arr[i]); String str = Long.toBinaryString(n); int blen = str.length(); for (int j = 0; j < 8 - blen; j++) { str = "0" + str; } biary += str; } return Long.parseLong(biary, 2); } private static String toIp(long n) { String biary = Long.toBinaryString(n); int len = biary.length(); for (int i = 0; i < 32 - len; i++) { biary = "0" + biary; } String ip = ""; for (int i = 0; i < 32; i += 8) { String str = biary.substring(i, i + 8); int a = Integer.parseInt(str, 2); ip += a; if (i != 24) { ip += "."; } } return ip; } }