十六进制安全回文密码检测
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
网络安全小组正在设计一种“十六进制安全回文密码”检测器。对于每个输入字符串,需要依次进行下面三步检查:
- 合法性检查:字符串必须是合法的十六进制串,也就是每个字符都只能是
0到9、a到f、A到F之一。若不合法,输出Error。 - 回文性检查:在忽略字母大小写的前提下,整个字符串必须是回文串。若不满足,输出
Not Palindrome。 - 偶数校验:把每个字符转成对应的十六进制数值,求这些数值之和。若这个和是偶数,输出
Safe,否则输出Unsafe。
注意:必须按上述顺序判断,一旦某一步不满足,就立刻输出对应结果,不再继续后面的判断。
输入格式
第一行一个整数 。
接下来 行,每行一个不含空格的字符串。
输出格式
对于每个字符串输出一行结果。
4
12G3
1bA2
1aA1
1B1
Error
Not Palindrome
Safe
Unsafe
2
Ff
12321
Safe
Unsafe
说明/提示
样例 1 解释:
12G3含有非法字符G,因此输出Error;1bA2合法,但忽略大小写后不是回文串,因此输出Not Palindrome;1aA1合法且是回文串,对应数值和为 ,是偶数,因此输出Safe;1B1合法且是回文串,对应数值和为 ,是奇数,因此输出Unsafe。
样例 2 解释:
Ff忽略大小写后为FF,是回文串,数值和为 ,输出Safe;12321是回文串,但数值和为 ,是奇数,因此输出Unsafe。
对于所有测试点,保证 ,每个字符串长度不超过 。