版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LMengi000/article/details/83443642
A. Diverse Substring
题意:
好吧,我一开始理解错题意了。所以就没有所以了。
给定一个字符串,让找这个字符串中是否存在相邻两个字符之间为不同字符的情况。
正确代码:
#include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int main() { int n; cin>>n; char s[n+1]; cin>>s; for(int i=1;i<n;i++) { if(s[i-1]!=s[i]) { cout<<"YES\n"; cout<<s[i-1]<<s[i]; return 0; } } cout<<"NO"; }
自己的错误代码:
#include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; const int maxn=10010; char str[maxn]; int cnt[maxn]; int main() { int t,flag=0; scanf("%d",&t); getchar(); memset(cnt,0,sizeof(cnt)); for(int i=0;i<t;i++) { scanf("%c",&str[i]); cnt[str[i]-'a']++; } for(int i=0;i<=30;i++) { if(cnt[i]>t/2) { flag=1; printf("NO\n"); break; } } if(flag==0) { printf("YES\n"); for(int i=0;i<t-1;i++) { printf("%c",str[i]); } cout<<endl; } return 0; }