AlgoMooc
← 返回题库

P3009. 版本管理

简单通过率 38% · 提交 120 · 通过 46
双指针模拟字符串

小慕在维护一个软件版本管理系统,版本号由点号分隔的数字序列组成,例如1.2.3和2.0。现在,小慕需要编写一个函数,计算两个版本号之间的可用版本号数量。这里的可用版本号是指所有满足version1 = version2,则返回0。

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

输入描述

输入两个字符串version1和version2,均遵循以下规定: 1. 版本号由数字和点组成,且至少包含一个数字。 2. 点不会作为版本号的开头或结尾,也不会连续出现。 3. 每个数字部分的数值忽略前导零(例如1.01和1.001视为相同) 4. 两个字符串中间以英文逗号分割

输出描述

输出一个整数,表示可用版本号的个数。具体规则如下: - 如果version1 >= version2,返回0 - 否则,找到第一个不同的版本号段,假设在位置i,version1的该段值为v1,version2的该段值为v2。可用版本号的个数为v2-v1-1。 - 如果第一个不同段之后的版本段在version2中不全为0,则返回0

示例

示例 1

输入

1.2,1.4

输出

1

说明:不同段中version1为2,version2为4,4-2-1 = 1

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

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

登录后查看题目图解

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

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