关注
同学,你的第二题是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道真题和解析 点赞 评论 收藏
分享
查看6道真题和解析 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 面试体验最好和最差的公司 #
6117次浏览 41人参与
# 如何提高实习转正率? #
99372次浏览 575人参与
# 厦门银行科技岗值不值得投 #
17179次浏览 412人参与
# 烂工作和没工作哪个更痛苦? #
7316次浏览 148人参与
# 重来一次,我还会选择这个专业吗 #
444323次浏览 3945人参与
# 给工作过的公司写一条大众点评,你会怎么写? #
3046次浏览 50人参与
# 春招至今,你收到几个面试了? #
14363次浏览 229人参与
# AI替代不了什么? #
6319次浏览 95人参与
# 现在入门AI首先要做什么? #
1523次浏览 49人参与
# 一人分享一个skill #
1192次浏览 35人参与
# 银行笔面经互助 #
190166次浏览 1312人参与
# 总结:offer选择,我是怎么选的 #
280624次浏览 1550人参与
# 有必要和同事成为好朋友吗? #
43859次浏览 439人参与
# Agent面试会问什么? #
5086次浏览 128人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
10827次浏览 56人参与
# 学历VS实习,哪个更重要? #
18575次浏览 250人参与
# 选完offer后,你后悔学本专业吗 #
67970次浏览 267人参与
# 职场吐槽大会 #
344950次浏览 2275人参与
# 如果实习可以转正,你会不会放弃秋招 #
968873次浏览 6870人参与
# 机械人,你的秋招第一份简历被谁挂了 #
261019次浏览 2435人参与
# 通信硬件薪资爆料 #
1289399次浏览 7263人参与