题解 | #子串计算#

子串计算

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

#include<bits/stdc++.h>
using namespace std;

int main() {
    string str;
    cin >> str;

    //用有序哈希表记录字串及出现次数
    map<string, int> count;

    //遍历字符串,获取所有子串及出现次数
    for (int i = 0; i < str.length(); i++) {
        for (int j = 1; j <= str.length() - i; j++) { //j为截取长度
            string sub_str = str.substr(i, j); //用substr函数截取子串
            count[sub_str]++;
        }
    }

    for (auto iter = count.begin(); iter != count.end(); iter++) {
        if (iter->second > 1) { //若某个子串出现的次数大于1
            cout << iter->first << ' ' << iter->second << endl; //输出
        }
    }
}

全部评论

相关推荐

06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-01 11:47
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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