标签:code 不同的 重复 string can 第一个 字符串 ace 意思
对于一个kmp匹配的问题,Chenjb给出了错误的贪心做法,求在某一特定需要匹配的字符串时,他的贪心代码可不可以通过所有样例。
首先要读懂它的贪心算法是啥意思,之后再把它和kmp算法进行比较,把不同的情况判断一下就行。
它的贪心就是从前往后开始遍历,但是这样对于aba这样出现与第一个元素重复的样例就不能准确的判断了。
所以把需要匹配的字符串从前开始往后遍历,如果找到与第一个元素相等的元素就输出WA,否则就输出AC。
#include<iostream> #include<cstring> #include<cstdio> #include<algorithm> using namespace std; const int N=1e5+10; string a; int num[26]; int main() { int n; scanf("%d",&n); cin>>a; int flag=0; for(int i=1;i<n;i++) { if(a[i]==a[0]) { flag=1; break; } } if(flag) printf("Wrong Answer\n"); else printf("Correct\n"); return 0; }
标签:code 不同的 重复 string can 第一个 字符串 ace 意思
原文地址:https://www.cnblogs.com/Elbow-613/p/14691567.html