题解 | 游游的字符重排

游游的字符重排

https://www.nowcoder.com/practice/39694c1e34444bc18ffd9ed53312b50e

因为很小,直接dfs枚举就可以,主要是看如何去重

这里是一种去重思路,将原来字符串排序然后直接看上一个是否使用过,如果没有使用过那说明这两个(多个)都不能用,所以不考虑放入

#include <iostream>
#include <vector>
#include <cmath>
#include <map>
#include <set>
#include <queue>
#include <algorithm>
#include <string>
using namespace std;
#define ll long long 
string s;
vector<bool>u(12,false);
ll ans=0;
void dfs(char lst,int cnt){
    if(cnt==s.length()){
        ans++;
        return;
    }
    for(int i=0;i<s.length();i++){
        if(u[i]==1||lst==s[i]||(i>0&&s[i]==s[i-1]&&u[i-1]==0))continue;
        u[i]=true;
        dfs(s[i],cnt+1);
        u[i]=false;
    }

}
int main()
{
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
    cin>>s;
    sort(s.begin(),s.end());
    dfs(' ',0);
    cout<<ans<<endl;
    //cout<<"copyright Refra1n"<<endl;
    return 0;
}

全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
今天 10:23
已编辑
湖南师范大学 计调
太久没更新,前几天看到一条评论,说“牛客就是当年那群做题区毕业了开始找工作还收不住那股味”的群体。字里行间透着居高临下的评判,不是,他该不会以为自己很幽默?很犀利吧?作为在牛客混了不算短日子的用户,我感到的不只是被冒犯,更是一种深刻的悲哀——这种以“松弛感”为名,对另一种生存策略的轻蔑,颇有一种自己考不上大学早早出来混社会,嘲笑考上大学的人是书呆子,然后大言不惭地说:死读书有什么用,人脉和资源才是硬道理。我不知道说这个话的人,手头究竟握着多少真正管用的人脉与资源,也不知道他这么傲慢地说出“那股味”的时候,是站在哪一个巨人的肩膀上,才能如此“松弛从容”地俯视众生,还能品评出别人身上“没收住”的余...
淬月星辉:这种评论把正常的努力扭曲成卷😂,说白了就是自己不努力,看着身边努力的人一个个都事业有成了,自己的心里开始不平衡了,就发这种酸言酸语。牛客可以说是我用过那么多平台里社区氛围最好的论坛了,用了大半年了,基本上没见过有人吵架的,都是在互帮互助提建议,帮忙看简历的,帮忙选offer的,帮忙指点学习路线的,分享工作经验和趣事的,我觉得这才是互联网该有的样子。
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务