题解 | #合法IP#
合法IP
https://www.nowcoder.com/practice/995b8a548827494699dc38c3e2a54ee9
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextLine()) { String input = in.nextLine(); String replace = input.replaceAll("\\.", ""); boolean isNo = false; for (int i = 0; i < replace.length(); i++) { if (replace.charAt(i) > '9' || replace.charAt(i) < '0') { isNo = true; } } if (!isNo) { isNo = defIsNo(input); } if (isNo) { System.out.println("NO"); } else { System.out.println("YES"); } } } private static boolean defIsNo(String input) { String[] array = input.split("\\.", -1); if (array.length != 4) return true; for (String s : array) { if (s.isEmpty() || (s.startsWith("0") && s.length() > 1)) return true; int ip = Integer.parseInt(s); if (ip < 0 || ip > 255) { return true; } } return false; } }