题解 | #找位置#

找位置

https://www.nowcoder.com/practice/e3b2cc44aa9b4851bdca89dd79c53150

//最笨的方法。。。
#include <iostream>
#include<vector>
using namespace std;

bool Isrecord(vector<char>v,char s)
{
    for(int i=0;i<v.size();i++)
    {
        if(v[i]==s)
        {
            return true;
        }
    }
    return false;
}

bool Ismul(string str,int pos,char s)
{
    int sum=0;
    for(int i=pos;i<str.length();i++)
    {
        if(str[i]==s)
        {
            sum++;
        }
        if(sum>=2)
        {
            return true;
        }
    }
    return false;
}

int main() {
    string str;
    vector<char>v;
    while(cin>>str)
    {
        for(int i=0;i<str.length();i++)
        {
            if(!Isrecord(v, str[i])&&(Ismul(str,i,str[i])))
            {
                for(int j=i;j<str.length();j++)
                {
                    if(str[j]==str[i])
                    {
                        cout<<str[i]<<":"<<j;
                        if(Ismul(str,j,str[i]))
                        {
                            cout<<",";
                        }
                    }
                }
                v.push_back(str[i]);
                cout<<endl;
            }

        }
    }
    return 0;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

10-09 22:05
666 C++
找到工作就狠狠玩CSGO:报联合国演讲,报电子烟设计与制造
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务