**牛客网–子串计算

**牛客网–子串计算

题目描述
给出一个01字符串(长度不超过100),求其每一个子串出现的次数。
输入描述:
输入包含多行,每行一个字符串。
输出描述:
对每个字符串,输出它所有出现次数在1次以上的子串和这个子串出现的次数,输出按字典序排序。
示例1
输入
复制
10101
输出
复制
0 2
01 2
1 3
10 2
101 2

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

int main() {
    string s;
    while (cin >> s) {
       map<string,int>m;
        for(int i=1;i<=s.length();i++){
            for(int j=0;j<i;j++){
                m[s.substr(j,i-j)]++;//核心
            }
        }
        for(auto it=m.begin();it!=m.end();it++)
        {
            if(it->second>1)
                cout<<it->first<<" "<<it->second<<endl;
        }
         
    }
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/100210.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号