关注
IP那个LeetCode上做过,我记得最出乎意料的一点是以0开头的,只能是0,其他判断都还比较简单,DFS+DP很容易解决,代码是我LeetCode上的解决办法,问题略有不同,原问题返回所有IP,这里我size了一下 import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.Stack;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String line = in.nextLine();
System.out.println(restoreIpAddresses(line).size());
}
public static List<String> restoreIpAddresses(String s) {
List<String> ret = new ArrayList<>();
if (s == null || s.length() < 4 || s.length() > 32)
return ret;
findIP(s, 0, 3, new Stack<>(), ret);
return ret;
}
public static void findIP(String s, int start, int part, Stack<String> stack, List<String> ret) {
if (part == -1) {
ret.add(toIP(stack));
return;
}
for (int i = start + 1, count = 0; count < 3 && i <= s.length(); i++, count++) {
if (s.length() - i >= part && s.length() - i <= 3 * part && Integer.parseInt(s.substring(start, i)) < 256) {
stack.push(s.substring(start, i));
findIP(s, i, part - 1, stack, ret);
stack.pop();
}
if (s.charAt(start) == '0')
break;
}
}
public static String toIP(Stack<String> stack) {
StringBuilder ret = new StringBuilder();
for (String s : stack) {
ret.append(s).append(".");
}
return ret.deleteCharAt(ret.length() - 1).toString();
}
}
查看原帖
点赞 评论
相关推荐

点赞 评论 收藏
分享
08-25 14:25
门头沟学院 Java 点赞 评论 收藏
分享
09-02 13:06
门头沟学院 嵌入式软件开发 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 面试最后的反问环节,能问些什么?(附特供问题)3.5W
- 2... BG一般,如何逆天改命拿下后端秋招SSP?1.4W
- 3... 从面试官的角度看待一场面试是怎么样的?8760
- 4... 害,找工作哪有不上当的!5901
- 5... 团、节、东孝子全部启动启动启动!(26届后端秋招总结)4595
- 6... 作为普通家庭出身的我,为什么非大厂不可?4493
- 7... 双非硕的十月份秋招总结4146
- 8... 项目经历混乱?STAR法则手把手教你梳理(附真实案例分析过程)3866
- 9... 待了一年,一点没亏3762
- 10... 感觉每个人都有自己的苦恼3692
正在热议
更多
# 实习在多还是在精 #
25238次浏览 195人参与
# 我的求职进度条 #
43502次浏览 645人参与
# 未岚大陆求职进展汇总 #
3930次浏览 56人参与
# 秋招踩过的“雷”,希望你别再踩 #
61408次浏览 868人参与
# 实习下班不想学习,正常吗? #
14423次浏览 154人参与
# 你见过哪些工贼行为 #
12318次浏览 77人参与
# 智慧芽求职进展汇总 #
717次浏览 5人参与
# 24届的你们现状如何了? #
97732次浏览 508人参与
# 校招谈薪一定要知道的事 #
10019次浏览 94人参与
# 找工作中的小确幸 #
21917次浏览 206人参与
# 反问环节如何提问 #
112903次浏览 2366人参与
# 顺丰求职进展汇总 #
62118次浏览 309人参与
# 如果不考虑收入,你最想做什么工作? #
31336次浏览 180人参与
# 你觉得什么岗位会被AI替代 #
12773次浏览 151人参与
# 为什么国企只招应届生 #
206028次浏览 1228人参与
# 你的房租占工资的比例是多少? #
61763次浏览 778人参与
# 工作中,努力重要还是选择重要? #
204844次浏览 2076人参与
# 入职以后才知道的校招谎言 #
98873次浏览 640人参与
# 远程面试的尴尬瞬间 #
206543次浏览 1299人参与
# 机械人的保底公司是哪一家? #
40764次浏览 133人参与
# 没有合适的工作,你会先找个干着,还是考公考研 #
136485次浏览 1200人参与
# 大厂VS公务员你怎么选 #
15203次浏览 221人参与