EOJ 3179 简单的匹配

原创 2017年01月03日 20:56:31
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define maxn 100
#define maxm 30
char t[maxn],p[maxm];
int simple_match(char t[],char p[],int n,int m)
{
    int i,j,k;
    for(i=0;i<=n-m;i++)//从0一直找到n-m,因为m为要查找数组的长度
    {
        for(j=0,k=i;j<m&&t[k]==p[j];k++,j++);//如果找到了相同的起始,则继续比较
        if(j==m) return i;//如果j和要寻找的长度相同 查找成功
    }
    return -1;
}
int main()
{
    while(scanf("%s",t)!=EOF)//多组输入
    {
        scanf("%s",p);
        int n= strlen(t);//计算两个数组长度
        int m=strlen(p);
        printf("%d\n",simple_match(t,p,n,m));
    }
}
简单的匹配方法,最重要的一句就在于下面这句代码,一个for循环直接结束查找过程。
for(j=0,k=i;j<m&&t[k]==p[j];k++,j++);

相关文章推荐

EOJ 2069 Asteroids 二分图最大匹配

Description Bessie wants to navigate her spaceship through a dangerous asteroid field inthe shape...

EOJ 1864 二分图匹配

典型的二分图匹配。x集合是组成给定的字符串的字符,y集合是立方体。x中的元素i和y中的元素j有边当且仅当,立方体j中包含有i这个字符。 我们求出最大匹配数,如果最大匹配数等于|x|,则此字符串可以被...

[转]稳定婚姻匹配问题 EOJ 162 The Stable Marriage Problem

首先说明:本文不是讨论婚姻问题的,而是一篇以日常生活的婚姻问题为例子说明一个有趣的算法:Gale-Shapley算法(延迟认可算法),如果你为此感到失望的话,我将表示我歉意,但是你如果有兴趣的话,还是...
  • pbj1203
  • pbj1203
  • 2011年03月02日 17:29
  • 2564

北大OJ百练——3179:最长单词(C语言)

输入一个英文句子,长度不超过200个字符。其中可包含的符号只有逗号","和句号"."。 输出句子中最长的一个单词。如果有多个这样的单词,输出最后出现的。...

简单的匹配游戏(安卓)

  • 2016年08月27日 10:23
  • 4.27MB
  • 下载

百练_3179查找一个句子中的最长单词

查找最长单词 题目:输入一个英文句子,长度不超过200个字符。输出句子中最长的一个单词。如果有多个这样的单词,输出最后出现的。 输入:多组数据,每行为一个句子,其中包含其他字符,其他字符不...

简单区域图像匹配

  • 2013年12月06日 12:50
  • 886B
  • 下载

ZOJ 3179 Calculate With Abacus

//2619034 2011-08-08 08:58:38 Accepted 3179 C 0 160 ylwh! #include #include #include int m...

匹配滤波器的简单仿真

  • 2017年08月25日 15:15
  • 367B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:EOJ 3179 简单的匹配
举报原因:
原因补充:

(最多只允许输入30个字)