关注
同学,你的第二题是IP地址码? 我记得是LeetCode 的原题,以前刷过 import java.util.Scanner; public class Main1 { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("hello world"); Scanner in = new Scanner(System.in); String s=in.nextLine(); vavidIP(s); } private static void vavidIP(String s) { // TODO Auto-generated method stub int len = s.length(); for (int i = 1; i <=3; ++i){ // first cut if (len-i > 9) continue; for (int j = i+1; j<=i+3; ++j){ //second cut if (len-j > 6) continue; for (int k = j+1; k<=j+3 && k<len; ++k){ // third cut int a,b,c,d; // the four int's seperated by "." a = Integer.parseInt(s.substring(0,i)); b = Integer.parseInt(s.substring(i,j)); // notice that "01" can be parsed into 1. Need to deal with that later. c = Integer.parseInt(s.substring(j,k)); d = Integer.parseInt(s.substring(k)); if (a>255 || b>255 || c>255 || d>255) continue; String ip = a+"."+b+"."+c+"."+d; if (ip.length()<len+3) continue; // this is to reject those int's parsed from "01" or "00"-like substrings System.out.println(ip); } } } } public static boolean isValid(String s){ if(s.length()>3 || s.length()==0 || (s.charAt(0)=='0' && s.length()>1) || Integer.parseInt(s)>255) return false; return true; } }
查看原帖
点赞 1
相关推荐
点赞 评论 收藏
分享
查看17道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 牛客新年AI问运 #
9124次浏览 123人参与
# 有必要和同事成为好朋友吗? #
1506次浏览 32人参与
# 牛客AI体验站 #
16885次浏览 294人参与
# 你喜欢工作还是上学 #
89652次浏览 885人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
328867次浏览 2126人参与
# 如果不上班,你会去做什么 #
29164次浏览 466人参与
# 第一次面试 #
1071812次浏览 13730人参与
# 被AI治愈的瞬间 #
90880次浏览 687人参与
# 我的求职精神状态 #
431599次浏览 3082人参与
# 秋招想进国企该如何准备 #
127439次浏览 620人参与
# 如何提高实习转正率? #
87255次浏览 510人参与
# 你找工作的时候用AI吗? #
173565次浏览 890人参与
# 你觉得什么岗位会被AI替代 #
41456次浏览 280人参与
# 一人推荐一个值得去的通信/硬件公司 #
241399次浏览 2092人参与
# 职场新人体验 #
169498次浏览 1176人参与
# 多益网络工作体验 #
63395次浏览 306人参与
# 秋招吐槽大会 #
305053次浏览 1524人参与
# 工作中的卑微时刻 #
33632次浏览 199人参与
# 为了秋招你都做了哪些准备? #
32686次浏览 534人参与
# 面试官问过你最刁钻的问题是什么? #
69256次浏览 442人参与