在基于 Internet 的程序中,我们常常需要判断一个 IP 字符串的合法性。
合法的IP是这样的形式:A.B.C.D。
其中 A、B、C、D 均为位于 [0, 255] 中的整数。
现在,请你来完成这个判断程序吧^_^
输入一行一个字符串,长度不超过 30。
如果输入的是合法 IP,输出"YES",否则输出"NO"。
192.168.110.1
YES
我们先对字符串做一遍预处理,一个合法的肯定 ip 只会包含数字和'.',所以如果包含了其他字符一定不是合法。然后扫描一遍,用一个 num 记录一个当前数字,遇到一个'.'的时候判断一下前面的数字是否小于等于 255,如果数字大于 255 就是非法,直接退出。然后令 num = 0。
注意,最后还需要判断一下数字的个数是否是 4 个,并且最后一个数字是否合法。
当然还需要考虑一种特殊情况,如果开头或者结束是一个'.',我们需要特殊处理,这种情况是非法的。