luogu#B3806. [语言月赛 202307] 枚举结构

[语言月赛 202307] 枚举结构

题目描述

D-- 是 2077 年的一种新兴语言。在 D-- 语言中,引入了一种「枚举结构」。具体的,这一种结构可以使用以下表达式表示:

X Y Z W

其中,X,ZX, Z 为单个小写字母,代表变量名;Y,WY, W 为整数,代表枚举的起始值和终止值。其代表,将变量 XXYY 枚举到 WW

由于 D-- 追求极致的安全性,因此为了进行确认,如果想要成功对 XX 变量进行枚举,那么 ZZ 必须与 XX 相同

例如,一个合法的枚举结构表达式如下:

i 1 i 100

其代表,将 ii 变量从 11 枚举到 100100


现在你收到了一个 D-- 枚举结构表达式 X Y Z W,请你判断和计算以下内容:

  1. 表达式的合法性
    一个枚举结构表达式,只有满足以下全部条件,方可算作合法:

    • XXZZ 均为小写字母。
    • XXZZ 相同。
    • YYWW 均为整数。在给定的表达式中,我们保证这一条总是成立。
  2. 如果合法,表达式将枚举的次数
    对于一个合法的枚举表达式,如果 YWY \le W,其将会枚举 WY+1W - Y + 1 次;否则,其将会枚举 YW+1Y - W + 1 次。

输入格式

输入共一行一个表达式 X Y Z W,其中 X,ZX,Z 为单个大小写字母或一位数字,Y,WY, W 为整数。

输出格式

输出共两行。

第一行为一个字符串。如果给定的表达式合法,输出 valid;否则输出 Invalid
第二行为一个整数,如果给定的表达式不合法,输出 1-1;否则输出表达式的枚举次数。

i 1 i 100
valid
100
I 1 j 100
Invalid
-1

提示

数据规模与约定

对于一个表达式 X Y Z W,对于 100%100\% 的数据,2×109Y,W2×109-2 \times 10 ^ 9 \leq Y, W \leq 2 \times 10 ^ 9X,ZX, Z 均为单个小写字母或单个大写字母或一位数字。