相同字母的最短距离
时间限制: 1000ms
空间限制: 65536kB
题目描述
时间:1s 空间:512M
题目描述:
给我们一个长度为n的字符串,我们想要知道相同字母之间的最短距离是多少(输出一个最小值即可)。
注:字母只有a~z26个小写字母,每个字符串都保证至少有一对字母相同。
题目输入:
输入第一行为一个整数 n,(字符的个数)。
第二行输入长度为n的字符串。
题目输出:
输出一个整数
样例输入:
10
abcacbcbad
样例输出:
2
数据范围:
2<=n <= 1e5;
样例解释:
其中 c(第三个位置,c(第5个位置),距离为2。 b(6)与 b(8)距离为2等。因为最低的相同字母之间的距离为2,所以我们就输出2。
我的样例:
#include <bits/stdc++.h>
using namespace std;
long long n;
string s;
int l=97;
int k;
int main(){
cin>>n>>s;
int ans=0x3f3f3f3f;
for(int i=0;i<n;i++){
for(int j=i+1;j<n;j++){
if(s[i]==s[j]){
ans=min(ans,j-i);
}
}
}
cout<<ans;
return 0;
}
不知道为什么超时了