AlgoMooc
← 返回题库

K0008. 魔法版本的能量提升计算

简单通过率 74% · 提交 120 · 通过 89
字符串模拟排序

在魔法学院中,小慕正在整理法术版本库,每个法术版本由一个 表示,每个字符串由点号分隔的若干整数段组成,例如:`主版本.次版本.补丁版本`。新版本的能量通常高于旧版本,为提升法术效果,小慕需要统计现有版本中哪些需要升级到指定的目标版本或更高版本。 版本比较规则: 1. 版本号按主版本、次版本、补丁版本的顺序。 2. 如果指定版本的某个段高于现有版本的对应段,则该现有版本需要升级。 3. 如果现有版本的某个段不存在, 参与比较。

提示:带虚线的词点一下有通俗解释。

输入描述

- 第一行包含一个整数 `n`,表示现有版本的数量,满足 1 ≤ n ≤ 10^4。 - 接下来 `n` 行,每行一个字符串,表示现有的魔法版本 `currentVersions`。 - 最后一行输入一个字符串 `targetVersion`,表示目标版本。 版本字符串的格式: - 每段由非负整数组成,数值范围为 0 ≤ \text{整数值} ≤ 10^9。

输出描述

输出一个整数,表示需要升级到目标版本的现有版本的数量。

示例

示例 1

输入

4
100.200
100.200.1
100.50
100.200.3
100.200.2

输出

3

说明:需要升级的版本如下: - `"100.200"`:目标版本 `100.200.2` 的补丁版本高于现有版本。 - `"100.200.1"`:目标版本 `100.200.2` 的补丁版本高于现有版本。 - `"100.50"`:目标版本 `100.200.2` 的次版本高于现有版本。 版本 `"100.200.3"` 已经高于目标版本,不需要升级。

示例 2

输入

4
1.0.0
1.2
0.9.9
1.0.1
1.1

输出

3

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。