题解
2024-03-03 09:36:27
发布于:上海
15阅读
0回复
0点赞
记得开long long
#include<iostream>
#include<string>
using namespace std;
int main(){
int n;
cin>>n;
for(int i=0;i<n;i++){
int a;
cin>>a;
string s;
cin>>s;
long long max1=0,max0=0,cnt1=0,cnt0=0,c1=0,c0=0;
for(int j=0;j<a;j++){
if(s[j]=='1'){
cnt1++;
cnt0=0;
c1++;
}else{
cnt0++;
cnt1=0;
c0++;
}max0=max(cnt0,max0),max1=max(cnt1,max1);
}cout<<max(max(max1*max1,max0*max0),c1*c0)<<endl;
}return 0;
}
这里空空如也
有帮助,赞一个