zoukankan      html  css  js  c++  java
  • HD2025查找最大元素

    查找最大元素

    Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 22383 Accepted Submission(s): 12296

    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)

    自己似乎一直都有点害怕做有关字符串的题目,可能是因为对于数字类的题接触比较多吧,字符串题练得少,这也是一道水题,AC了,之后又看到几个ac的代码,感觉还是就算是水题,也可以做出各种花样:

    #include<iostream>
    using namespace std;
    int main(){
        char a[101];
        int i;
        while(cin>>a)   //这里用gets(a)
        {
            char max = a[0];
            for( i=1;a[i]!='';i++){
                if(a[i]>max)
                    max=a[i];
            }
            for( i=0;a[i]!='';i++){
                if(a[i]==max)
                    cout<<a[i]<<"(max)";
                    else
                        cout<<a[i];
            }
            cout<<endl;
        }
        return 0;
    }

    或者这样:

    #include<iostream>
    #include<string>
    using namespace std;
    int main(){
        string a;;
        int i;
        while(cin>>a)
        {
            char max = a[0];
            for( i=1;i<a.size();i++){   //a.size()   strlen(a)
                if(a[i]>max)
                    max=a[i];
            }
            for( i=0;a[i]!='';i++){
                if(a[i]==max)
                    cout<<a[i]<<"(max)";
                    else
                        cout<<a[i];
            }
            cout<<endl;
        }
        return 0;
    }

    在讨论区还有这样的乱世奇葩:

    #include<iostream>
    #include<vector>
    #include<string>
    using namespace std;
    int main()
    {
        string s;
        int i,j;
        char max;
        while(cin>>s)
        {
            vector<char>v;
            max='A';
            for(i=0;i<s.length();i++)
            {
               if(max<s[i])  max=s[i];
               v.push_back(s[i]);
            }
            i=0;
                for(;i<v.size();i++)
            {
                if(v[i]==max)
                {
                   v.insert(v.begin()+i+1,'(');
                   v.insert(v.begin()+i+2,'m');
                   v.insert(v.begin()+i+3,'a');
                   v.insert(v.begin()+i+4,'x');
                   v.insert(v.begin()+i+5,')');
                   i=i+5;
                }
            }
            for(i=0;i<v.size();i++)
                cout<<v[i];
            cout<<endl;
        }
        return 0;
    }
  • 相关阅读:
    bzoj1059: [ZJOI2007]矩阵游戏
    NEW
    bzoj2438: [中山市选2011]杀人游戏
    bzoj4554: [Tjoi2016&Heoi2016]游戏 二分图匹配
    【高精度】模板 (C++)
    【BZOJ4025】二分图 LCT
    读入/输出模板
    一些 Markdown 语法
    题解 P3732 [HAOI2017]供给侧改革
    题解 CF1598A Computer Game
  • 原文地址:https://www.cnblogs.com/LZYY/p/3286283.html
Copyright © 2011-2022 走看看