问,我这个为啥T2只拿了7.5分

#include<bits/stdc++.h>

using namespace std;

int main(){

int x;

cin>>x;

for(int i=1;i<=x;i++){

int a[30];

memset(a,0,sizeof(a));

int y;

string s;

cin>>y>>s;

for(int j=0;j<y;j++){

a[s[j]-'a']++;

}

int sum2=0;

for(int j=0;j<26;j++){

if(a[j]==2){

sum2=1;

}

}

if(sum2==0){

cout<<-1<<endl;

continue;

}

int minn=0xff;

int b[100005];

s+=s;

memset(b,-1,sizeof(b));

for(int j=0;j<2*y;j++){

for(int k=j+1;k<2*y;k++){

if(s[j]==s[k]){

b[j]=k-j-1;

break;

}

}

if(b[j]!=-1)minn=min(minn,b[j]);

}

cout<<minn<<endl;

}

return 0;

}

全部评论
记得搞代码块
点赞 回复 分享
发布于 2024-12-09 09:37 吉林

相关推荐

评论
点赞
收藏
分享

创作者周榜

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