U143306.版本号校验
普及-
COCI
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
题目背景
Mojang 版本号体系丰富多样,涵盖了从远古到现代的各个时期。ALEX今天需要校验一系列版本号是否格式合法,并且是否按字典序严格递增,她请你来帮助她
合法版本号定义
一个版本号合法,当且仅当满足以下条件之一:
1. 远古版
- Alpha 版:以
a开头,后跟数字,例如a1.0.0、a1.2.5。 - Beta 版:以
b开头,后跟数字,例如b1.7.3、b1.8.1。
2. 正式版
格式为 主版本.次版本 或 主版本.次版本.修订号,数字无前导零(单独的 0 允许)。
例如:26.1、26.1.2、26.2、26.3、1.0。
3. 传统快照
格式为 YYwWWx,其中 YY 为两位年份,WW 为两位周数,x 为小写字母。
例如:23w18a、24w14a。
无版本限制,任何合法格式均通过。
4. 预发布版 / 候选版
- 预发布:
26.2-pre1、26.2-pre-2 - 候选版:
26.2-rc1、26.2-rc-2
无版本限制,任何合法数字均可。
5. 语义化快照
格式为 x.y-snapshot-N 或 x.y.z-snapshot-N。
重要限制:仅当 x.y 满足 x > 26 或 (x == 26 && y >= 1) 时合法。
例如:
26.1-snapshot-1✅26.1.2-snapshot-1✅26.2-snapshot-5✅26.0-snapshot-1❌1.20-snapshot-1❌
6. 愚人节版本(特殊判定)
以下版本号直接判定为合法,不经过任何格式检查:
26w14a25w14craftmine23w13a_or_b22w13oneblockatatime20w14∞2.01.RV-Pre122w13oneBlockAtATime23w13AOrB
除上述版本号外,任何其他字符串均不享受此特殊判定。
顺序规则
所有版本号统一按 字典序 比较,要求严格递增。
输入格式
输入格式
第一行一个整数 n(1 ≤ n ≤ 10^5)。
接下来 n 行,每行一个版本号字符串。
输出格式
输出格式
- 全部合法且严格递增 → 输出
OK。 - 否则输出第一个错误的行号和原因:
Line X: Invalid formatLine X: Out of order
输入输出样例
输入#1
6 a1.0.0 b1.7.3 26.1 26.2 26.3 26.3.1
输出#1
OK
说明/提示
数据范围与约定
1 ≤ n ≤ 10^5- 每个版本号长度不超过
50 - 所有字符均为可见 ASCII 字符(不含空格),但可能包含特殊字符(如
∞) - 时间限制:
1s - 内存限制:
256MB
输入解题思路,AI测评打分。不知道怎么写?