题解 | #合法IP#巧用strconv做辅助检验
合法IP
http://www.nowcoder.com/practice/995b8a548827494699dc38c3e2a54ee9
如题,第一个想法就是能不能用什么奇技淫巧来处理,因为暂时对go不是很熟悉。。。所以
package main
import (
"fmt"
"strings"
"strconv"
)
func main() {
for {
var a string
n, _ := fmt.Scan(&a)
if n == 0 {
break
} else {
flag:=true
arr := strings.Split(a,".")
//判断是否四位
if len(arr) !=4 {
fmt.Println("NO")
break
}
//循环处理
for i:=0;i<len(arr);i++{
num,_:=strconv.Atoi(arr[i])
str:=strconv.Itoa(num)
//判断转换前后的值是否一个,数字是否在0到255之间
if arr[i]!=str || num>255 || num <0{
flag = false
break
}
}
if !flag{
fmt.Println("NO")
}else{
fmt.Println("YES")
}
}
}
}
查看8道真题和解析