2025-查找最大元素
- Problem Description
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
- Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。
- Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入"(max)"。
- Sample Input
abcdefgfedcba
xxxxx
- Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
这道题的我的思路就两次循环,一次查找最大字母是哪一个,另一次就是输出的时候检查是否是最大字母然后再选择输出(max)
当时这道题有个很坑的漏洞,那就是题目说是输入大小写字母,但实际上只有小写字母的测试。我一开始考虑全面了,结果出错了,我果断删了判断大写字母的那一部分,然后直接AC。注释去掉就是大小写都考虑了。
#include<stdio.h>
int main(void)
{
int i,b;
char str[101];
while(~scanf("%s",str))
{
b=str[0];
for(i=0;str[i]!='\0';i++)
{
b=(b>str[i])?b:str[i];
// if(str[i]<='Z')
// b=(b>(str[i]+32))?b:(str[i]+32);
}
for(i=0;str[i]!='\0';i++)
{
printf("%c",str[i]);
// if(str[i]==b||(str[i]+32)==b)
printf("(max)");
}
printf("\n");
}
return 0;
}