查找最大元素

查找最大元素

时间: 1ms        内存:64M

描述:

对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。

输入:

输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。

输出:

对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入" (max)"。

示例输入:

abcdefgfedcba
xxxxx

示例输出:

abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)

提示:

参考答案(内存最优[752]):

#include<stdio.h> 
int main() 
{   
   char c[100],a; 
   int i;
   while(gets(c))
   {  
	   a=c[0];
        for(i=1;c[i]!='\0';i++)
          if(c[i]>a)
			  a=c[i];
		  for(i=0;c[i]!='\0';i++)
			  if(c[i]==a)
				  printf("%c(max)",c[i]);
			  else
				  printf("%c",c[i]);
			  printf("\n");
   }
   return 0; 
} 

参考答案(时间最优[0]):

#include<stdio.h>
#include<iostream>
using namespace std;
#include<string.h>
#include<string>
int main()
{
	int m,n;
	char s,max;
		
		string str,str2="(max)";
	//cin.getline(str,1000);
	while(cin>>str)
	{
	   max=0;
	   m=0;
       while(str[m]!='\0')
	   {
		   if(str[m]>max) max=str[m];
		   m++;
	   }
	   m=0;
		   while(str[m]!='\0')
		   {
			   if(str[m]==max)
			   {
				   str.insert(m+1,str2);
				   m+=5;
			   }
			   m++;
		   }
        cout<<str<<endl;
	}
	return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注