HDU 2206

来源:互联网 发布:windows手机版主题 编辑:程序博客网 时间:2024/06/14 08:47
/********************************************************************** * 巨蛋疼的题。。。**********************************************************************/import java.io.*;import java.util.*;public class Main{static int INF_INT = 0x3f3f3f3f;static long INF_LONG = 0x7fffffffffffffffL;static double PI = Math.acos(-1.0);static double oo = 10e9;static double eps = 10e-9;static Scanner cin = new Scanner(new BufferedInputStream(System.in));static String str = new String("");static boolean isvalid(){if (str.length() > 15){return false;}int ncnt = 0;for (int i = 0; i < str.length(); ++i){if ('.' == str.charAt(i)){++ncnt;}else if (!('0' <= str.charAt(i) && str.charAt(i) <= '9')){return false;}}if (ncnt != 3){return false;}if ('.' == str.charAt(0) || '.' == str.charAt(str.length() - 1)){return false;}for (int i = 1; i < str.length(); ++i){if ('.' == str.charAt(i - 1) && '.' == str.charAt(i)){return false;}}int ptr = 0;while (ptr < str.length()){int buf = 0;while (ptr < str.length()){if (str.charAt(ptr) == '.'){break ;}buf *= 10;buf += (int)(str.charAt(ptr) - '0');if (buf > 255){return false;}++ptr;}if (ptr == str.length()){break ;}if (str.charAt(ptr) == '.'){++ptr;}}return true;}public static void main(String[] args){while (cin.hasNext()){str = cin.nextLine();System.out.print(isvalid() ? "YES" : "NO");System.out.println();}return ;}}

原创粉丝点击