首页 > 其他 > 详细

[蓝桥杯2019初赛]不同子串

时间:2020-02-22 20:29:35      阅读:71      评论:0      收藏:0      [点我收藏+]

 

用map来保存结果,保证字串的唯一性。

#include <iostream>
#include <string>
#include <map>

using namespace std;

int main() {
    
    string str = "0100110001010001";
    map<string, int> ans; 
    // 求连续子串
    // 定义窗口大小 
    for (int i = 1; i <= str.size(); i++) {
        // 每次都从字符串始端,开始滑动窗口
        for (int j = 0; j <= str.size()-i; j++) {
            // 从窗口的起始位置开始提取窗口的值 
            string s = "";
            for (int k = j; k < j+i && k <= str.size()-1; k++) {
                s = str[k] + s;
            } 
            ans[s]++;
        }
    } 
    cout << ans.size() << endl;
    return 0;
}

 

 

 

over......

 

[蓝桥杯2019初赛]不同子串

原文:https://www.cnblogs.com/hello-dummy/p/12346955.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!