1
Blask 2016-07-13 15:18:06 +08:00
import ipaddress
import sys f=open('1','r') while(1): line=f.readline() if not line: break print(ipaddress.ip_network(line.strip()).hostmask) |
2
Blask 2016-07-13 15:19:11 +08:00
缩进乱了
|
3
Blask 2016-07-13 15:20:13 +08:00
看错了 😄
|
4
raptium 2016-07-13 15:26:23 +08:00
Java 的话可以用 Guava 的 RangeSet 来做
把 IP 转为数字,然后从全集里不断扣除就好了 |
5
SoloCompany 2016-07-14 00:29:39 +08:00
这不是集合问题啊,算法问题的话或许勉强算得上
假设无交集的话,可以先排序(按起点 ip )然后一次遍历得到反向区段 有交集的话,问题就比较复杂了,正确的思路应该是先去掉交集再按上面方法做 |
6
SoloCompany 2016-07-14 00:32:33 +08:00
|