题解 | #整数与IP地址间的转换#
整数与IP地址间的转换
https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea
using System; using System.Collections.Generic; using System.Linq; public class Program { public static void Main() { var input = Console.ReadLine() .Split(".") .Select(r => Convert.ToString(int.Parse(r), 2)) .ToList(); for (var i = 0; i < input.Count; i++) { if (input[i].Length < 8) { input[i] = input[i].PadLeft(8, '0'); } } var result = Convert.ToInt64(string.Join("", input), 2); var input1 = Convert.ToString(Convert.ToInt64(Console.ReadLine()), 2); if (input1.Length < 32) { input1 = input1.PadLeft(32, '0'); } var splitList = new List<string>(); while (input1.Length > 0) { splitList.Add(input1.Substring(0, 8)); input1 = input1.Remove(0, 8); } var convertList = splitList .Select(r => Convert.ToInt64(r.ToString(), 2)) .ToList(); var result1 = string.Join(".", convertList); Console.WriteLine(result); Console.WriteLine(result1); } }