L - String Freshman

时间:2021-04-22
本文章向大家介绍L - String Freshman,主要包括L - String Freshman使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

题目描述

 输入输出描述

 样例

 题目大意

  对于一个kmp匹配的问题,Chenjb给出了错误的贪心做法,求在某一特定需要匹配的字符串时,他的贪心代码可不可以通过所有样例。

分析

  首先要读懂它的贪心算法是啥意思,之后再把它和kmp算法进行比较,把不同的情况判断一下就行。

  它的贪心就是从前往后开始遍历,但是这样对于aba这样出现与第一个元素重复的样例就不能准确的判断了。

  所以把需要匹配的字符串从前开始往后遍历,如果找到与第一个元素相等的元素就输出WA,否则就输出AC。

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;
}

原文地址:https://www.cnblogs.com/Elbow-613/p/14691567.html