Description
给定一个字符串,求所有长度为 (k le 10) 的子串的最大出现次数是多少。
Solution
由于 (k) 非常小,索性连哈希都省了,直接用 unordered_map
套 std::string
处理即可。
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1000005;
string str;
int n,k;
unordered_map<string,int> mp;
signed main()
{
cin>>str>>k;
n=str.length();
for(int i=0;i<n-k+1;i++)
{
mp[str.substr(i,k)]++;
}
int ans=0;
for(auto i:mp)
{
ans=max(ans,i.second);
}
cout<<ans;
system("pause");
}