A:点击打开链接
暴力,随机分到的队友代码能力比较强,最后我提供了思路,他实现了。
#include<iostream>
using namespace std;
string s, ss;
bool could(int l1, int l2){
for(int i =0;i<l1+l2;++i){
if(s[i]!=s[i+l1+l2]) return false;
}
return true;
}
int main(){
int T;
cin>>T;
while(T--){
cin>>ss;
s.clear();
for(int i =0; i<ss.length();++i)
if((ss[i]>='a'&&ss[i]<='z')||(ss[i]>='A'&&ss[i]<='Z'))
s+=ss[i];
//=========================================================
bool abc=false;
for(int len1=1;len1<=s.length()/2;++len1){
for(int len2=1;len2<=s.length()/2-len1;++len2){
if((len1+len2)*2>=s.length()) continue;
if(could(len1, len2)==false) continue;
string sa=s.substr(0, len1);
string sb=s.substr(len1, len2);
if(sa==sb) continue;
if(s.length()==3*sa.length()+2*sb.length()){
string ssa=s.substr((len2+len1)*2, len1);
if(sa==ssa) { abc=true; goto end;}
}
if(s.length()>3*sa.length()+3*sb.length()){
int len3=s.length()-3*sa.length()-3*sb.length();
string ssc=s.substr((len2+len1)*2, len3);
string ssa=s.substr((len2+len1)*2+len3, len1);
string ssb=s.substr((len2+len1)*2+len3+len1, len2);
//cout<<sa<<" "<<sb<<" "<<ssc<<" "<<ssa<<" "<<ssb<<endl;
if(sa==ssa&& sb==ssb&& ssc!=sa &&ssc!=sb) { abc=true; goto end;}
}
}
}
end:
if(abc) cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
return 0;
}
J:
点击打开链接
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn = 50 + 5;
int res[maxn];
int main()
{
int T;
cin >> T;
while(T--)
{
int n;
cin >> n;
memset(res,0,sizeof(res));
for(int i = 1; i <= n; ++i) scanf("%d",&res[i]);
int sum =0;
for(int i = 2; i < n;++i)
{
//cout << res[i-1] << " " << res[i] <<" " << res[i+1] << endl;
if(res[i] > res[i-1] && res[i] > res[i+1]) ++sum;
}
cout << sum << endl;
}
return 0;
}