CF1821C.Tear It Apart
普及-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given a string s, consisting of lowercase Latin letters.
In one operation, you can select several (one or more) positions in it such that no two selected positions are adjacent to each other. Then you remove the letters on the selected positions from the string. The resulting parts are concatenated without changing their order.
What is the smallest number of operations required to make all the letters in s the same?
给你一个由小写拉丁字母组成的字符串 s。
在一次操作中,你可以选择其中若干个(至少一个)位置,要求所选位置中任意两个均不相邻。然后,你将这些位置上的字母从字符串中删除,剩余部分按原顺序拼接起来。
要使字符串 s 中所有字母都相同,最少需要多少次操作?
输入格式
The first line contains a single integer t (1≤t≤104) — the number of testcases.
The only line of each testcase contains a string s, consisting of lowercase Latin letters. Its length is from 1 to 2⋅105.
The total length of the strings over all testcases doesn't exceed 2⋅105.
第一行包含一个整数 t(1≤t≤104)—— 表示测试用例的数量。
每个测试用例仅有一行,包含一个字符串 s,由小写拉丁字母组成。其长度在 1 到 2⋅105 之间。
所有测试用例中字符串的总长度不超过 2⋅105。
输出格式
For each testcase, print a single integer — the smallest number of operations required to make all the letters in the given string s the same.
对于每个测试用例,输出一个整数——使给定字符串 s 中所有字母变为相同的最小操作次数。
输入输出样例
输入#1
5 abacaba codeforces oooooooo abcdef mewheniseearulhiiarul
输出#1
1 3 0 2 4
说明/提示
In the first testcase, you can select positions 2,4 and 6 and remove the corresponding letters 'b', 'c' and 'b'.
In the third testcase, the letters in the string are already the same, so you don't have to make any operations.
In the fourth testcase, one of the possible solutions in 2 operations is the following. You can select positions 1,4,6 first. The string becomes "bce". Then select positions 1 and 3. The string becomes "c". All letters in it are the same, since it's just one letter.
在第一个测试用例中,你可以选择位置 2,4 和 6,并删除对应字母 'b'、'c' 和 'b'。
在第三个测试用例中,字符串中的所有字母已经相同,因此无需执行任何操作。
在第四个测试用例中,一种可在 2 次操作内完成的可行方案如下:首先选择位置 1,4,6,字符串变为 "bce";然后选择位置 1 和 3,字符串变为 "c"。此时字符串中所有字母均相同(因为只剩一个字母)。
输入解题思路,AI测评打分。不知道怎么写?