CF1547B.Alphabetical Strings
入门
通过率:0%
时间限制:2.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
A string s of length n (1≤n≤26) is called alphabetical if it can be obtained using the following algorithm:
- first, write an empty string to s (i.e. perform the assignment s := "");
- then perform the next step n times;
- at the i-th step take i-th lowercase letter of the Latin alphabet and write it either to the left of the string s or to the right of the string s (i.e. perform the assignment s := c+s or s := s+c, where c is the i-th letter of the Latin alphabet).
In other words, iterate over the n first letters of the Latin alphabet starting from 'a' and etc. Each time we prepend a letter to the left of the string s or append a letter to the right of the string s. Strings that can be obtained in that way are alphabetical.
For example, the following strings are alphabetical: "a", "ba", "ab", "bac" and "ihfcbadeg". The following strings are not alphabetical: "z", "aa", "ca", "acb", "xyz" and "ddcba".
From the given string, determine if it is alphabetical.
长度为 n(1≤n≤26)的字符串 s 被称为字母序的(alphabetical),当且仅当它可通过如下算法生成:
- 首先,将空字符串赋给 s(即执行赋值操作 s := "");
- 然后,重复执行下一步 n 次;
- 在第 i 步中,取拉丁字母表中第 i 个小写字母,并将其写入字符串 s 的左侧或右侧(即执行赋值操作 s := c+s 或 s := s+c,其中 c 为拉丁字母表中第 i 个字母)。
换言之,我们依次遍历拉丁字母表的前 n 个字母(从 'a' 开始,依此类推)。每次操作均将当前字母前置(prepending)到字符串 s 的左侧,或后置(appending)到字符串 s 的右侧。所有能通过这种方式得到的字符串均为字母序的。
例如,以下字符串是字母序的:“a”、“ba”、“ab”、“bac” 和 “ihfcbadeg”。以下字符串不是字母序的:“z”、“aa”、“ca”、“acb”、“xyz” 和 “ddcba”。
给定一个字符串,请判断它是否为字母序的。
输入格式
The first line contains one integer t (1≤t≤104) — the number of test cases. Then t test cases follow.
Each test case is written on a separate line that contains one string s. String s consists of lowercase letters of the Latin alphabet and has a length between 1 and 26, inclusive.
第一行包含一个整数 t(1≤t≤104)—— 表示测试用例的数量。随后是 t 个测试用例。
每个测试用例占单独一行,包含一个字符串 s。字符串 s 由拉丁字母的小写字母组成,长度在 1 到 26(含)之间。
输出格式
Output t lines, each of them must contain the answer to the corresponding test case. Output YES if the given string s is alphabetical and NO otherwise.
You can output YES and NO in any case (for example, strings yEs, yes, Yes and YES will be recognized as a positive answer).
输出 t 行,每行必须包含对应测试用例的答案。如果给定字符串 s 是字母序的,则输出 YES;否则输出 NO。
您可以用任意大小写形式输出 YES 和 NO(例如,字符串 yEs、yes、Yes 和 YES 均会被识别为肯定回答)。
输入输出样例
输入#1
11 a ba ab bac ihfcbadeg z aa ca acb xyz ddcba
输出#1
YES YES YES YES YES NO NO NO NO NO NO
说明/提示
The example contains test cases from the main part of the condition.
该示例包含了条件主体部分的测试用例。
输入解题思路,AI测评打分。不知道怎么写?