首页 > 8.15老虎证券笔试
头像
九该小旋风
发布于 2021-08-15 18:30
+ 关注

8.15老虎证券笔试

第一题
#include<bits/stdc++.h>
using namespace std;
vector<string> sb(string str)
{
    vector<string> r;
    sort(str.begin(),str.end());
    do{
        string temp;
        for(int i=0;i<str.size();i++)
        {
            temp+=str[i];
            if(i!=str.size()-1) temp+="-";
        }
        r.push_back(temp);
    }while(next_permutation(str.begin(),str.end()));
    return r;
}
int  main()
{
    string temp;
    cin>>temp;
    unordered_map<char,int> mp;
    for(int i=0;i<temp.size();i++)
    {
        mp[temp[i]]=i;
    }
    auto wtf = sb(temp);
    
    sort(wtf.begin(),wtf.end(),[&](string a,string b){
       return mp[a[0]]<mp[b[0]]||( mp[a[0]]==mp[b[0]]&&mp[a[2]]<mp[b[2]])||( mp[a[0]]==mp[b[0]]&&mp[a[2]]==mp[b[2]]&&mp[a[4]]<mp[b[4]]);
    });

    for(auto c:wtf)
    {
        cout<<c<<endl;
    }
    return 0;
}
第二题:双指针就行了 

全部评论

(2) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐