#1277. 浮点数验算

浮点数验算

题目描述

小明收到了一项特殊的任务,任务要求小明进行浮点数的合法性验算,小明收到了多串字符,他需要判断每一串字符串是否可以成为一个浮点数的合法表示。浮点数的表示需要满足以下格式:

  • 可以有 -+,也可以没有,但最多只有一个,且必须出现在第一个字符;
  • 可以有小数点,也可以没有小数点,但最多只有一个小数点;
  • 整数部分可以省略、小数部分也可以省略、但不能同时省略。
  • 整数部分和小数部分只能包含数字

输入格式

输入一个整数T,表示查询次数,接下来T行,每行输入一个字符串,保证每个字符都是可见字符,保证该串中不会出现空格或换行。

输出格式

如果输入是一个浮点数的合法表示,输出 Valid,否则,输出 Invalid

3
+3.1415926
1.0a10
-25.
Valid
Invalid
Valid
3
.
-.
-5
Invalid
Invalid
Valid

样例1解释

  • 11是个标准的浮点值。
  • 22小数部分包含了其他字符,不符合要求。
  • 33是个标准的浮点值,它只省略了小数部分。

样例2解释

  • 11不符合标准,不能同时省略整数和小数。
  • 22不符合标准,不能同时省略整数和小数。
  • 33符合标准。

数据范围

100%100\%的数据: 保证1T10001\leq T\leq1000,字符串的长度1s50001\leq|s|\leq5000