第 3 题 傻瓜锁 (lock)
时间限制 1.0 s · 空间限制 256 MB · 120 个测试点 · 全文比较(过滤行末空格及文末回车)
本题使用文件输入输出:输入文件 lock.in,输出文件 lock.out。
按照署名—非商业性使用—相同方式共享 4.0 协议国际版进行授权。
题目描述
KOI 国即将举办一场“快速解锁比赛”。你作为参赛者,正在练习解锁的能力。本次比赛所用的锁因为特性特殊,被称为傻瓜锁。
傻瓜锁可以用一个由小写英文字母组成的字符串
- 将第 1 个字符 ‘i’ 改为 ‘h’。
- 将第 1 个字符 ‘i’ 改为 ‘j’。
- 将第 2 个字符 ‘o’ 改为 ‘n’。
- 将第 2 个字符 ‘o’ 改为 ‘p’。
- 将第 3 个字符 ‘i’ 改为 ‘h’。
- 将第 3 个字符 ‘i’ 改为 ‘j’。
- 将第 4 个字符 ‘a’ 改为 ‘b’。
- 将第 5 个字符 ‘a’ 改为 ‘b’。
傻瓜锁具有如下特性:**当字符串中字符按照字母表升序排列时,锁就被解开了。**也就是说,对于任意的
例如,“aabbcc”、“ee1”、“a”、“zzzzz” 都是升序排列的;而 “lee”、“ccbbaa”、“koi” 则不是升序排列的。
定义一个傻瓜锁当前状态为字符串
现在,你打算通过更难的练习方式来提升自己。
初始时,给定傻瓜锁的状态为字符串
你的任务是:首先输出初始字符串
输入格式
第一行输入字符串
第二行输入整数
若
输出格式
总共需输出
- 第 1 行输出初始字符串
的难度; - 若
,接下来的 行,依次输出每次更新操作后当前字符串 的难度。
样例
样例 1
输入:
ababba
5
1 b
3 b
2 a
2 b
5 a输出:
2
2
1
2
1
2样例 2
输入:
acabed
5
1 c
2 a
3 d
4 c
5 a输出:
3
4
3
5
4
5样例 3
输入:
acaykp
6
1 c
2 a
5 a
6 k
3 p
4 c输出:
16
16
16
26
26
31
17样例 4
输入:
zaire
1
5 r输出:
38
25提示
限制条件
由小写英文字母组成。 的长度 满足 。 。 。 为小写英文字母,且保证 不等于更新前 的第 个字符。 - "小写英文字母"指的是 “abcdefghijklmnopqrstuvwxyz”。
子任务
- (7 分)
, ,且 仅由 ‘a’、‘b’ 组成。 - (6 分)
, 仅由 ‘a’、‘b’ 组成,更新后依然保持只含 ‘a’、‘b’。 - (5 分)
, 仅由 ‘a’、‘b’、‘c’ 组成,更新后依然保持只含这三种字符。 - (4 分)
, 仅由 ‘a’、‘b’、‘c’、‘d’、‘e’ 组成,更新后依然保持如此。 - (3 分)
。 - (12 分)
仅由 ‘a’、‘b’ 组成,更新后依然保持如此。 - (10 分)
仅由 ‘a’、‘b’、‘c’ 组成,更新后依然保持如此。 - (8 分)
仅由 ‘a’、‘b’、‘c’、‘d’、‘e’ 组成,更新后依然保持如此。 - (45 分)无附加限制。
翻译由 ChatGPT-4o 完成