剪花布条

Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 32600 Accepted Submission(s): 19891

Problem Description
一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案。对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?

Input
输入中含有一些数据,分别是成对出现的花布条和小饰条,其布条都是用可见ASCII字符表示的,可见的ASCII字符有多少个,布条的花纹也有多少种花样。花纹条和小饰条不会超过1000个字符长。如果遇见#字符,则不再进行工作。

Output
输出能从花纹布中剪出的最多小饰条个数,如果一块都没有,那就老老实实输出0,每个结果之间应换行。

Sample Input
abcde a3
aaaaaa aa

Sample Output
0
3

Author
qianneng

Source
冬练三九之二

问题链接:HDU2087 剪花布条
问题简述:(略)
问题分析
    KMP算法水题,不解释。
程序说明:(略)
参考链接:(略)
题记:(略)

AC的C语言程序如下:

/* HDU2087 剪花布条 */#include <stdio.h>
#include <string.h>#define N 1000
char s1[N + 1], s2[N + 1];
int next[N + 1];void set_next(char s[], int next[], int len)
{int i, j;i = 0, j = next[0] = -1;while (i < len) {while (j != -1 && s[i] != s[j])j = next[j];next[++i] = ++j;}
}int kmp_count(char *s, char *t)
{int i = 0, j = 0, ans = 0;int lens = strlen(s), lent = strlen(t);set_next(s, next, lens);while (i < lent) {while(j != -1 && t[i] != s[j])j = next[j];i++, j++;if(j >= lens) {ans++;j = 0;}}return ans;
}int main(void)
{while(scanf("%s", s1) != EOF && s1[0] != '#') {scanf("%s", s2);printf("%d\n", kmp_count(s2, s1));}return 0;
}

HDU2087 剪花布条【KMP】相关推荐

  1. 2016 UESTC Training for Search Algorithm String I - 谭爷剪花布条 KMP

    I - 谭爷剪花布条 Time Limit: 3000/100MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit ...

  2. HDU2087剪花布条

    Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? Input 输入 ...

  3. HDU 2087 剪花布条 KMP入门

    Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条.计算一下能从花布条中尽可能剪出几块小饰条来呢? Input 输入 ...

  4. HDU 2087剪花布条 KMP

    KMP算法入门题  哥第一次写KMP惭愧啊,惭愧getnext写得蛋痛,后面的KMP部分更蛋痛.改了N久 #include<stdio.h> #include<string.h> ...

  5. 剪花布条(KMP入门)

    剪花布条 HDU - 2087 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢?  Input输入中含有一 ...

  6. 【hdu 2087】剪花布条

    今天去刷了一下前几届学长大一时的周赛题,主要收获是学了点string类的基本用法. 题目链接:传送门 剪花布条 Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰 ...

  7. 剪花布条(HDU-2087)

    Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? Input 输入 ...

  8. 刷题_33:剪花布条 and 客似云来

    一.剪花布条 题目链接: 剪花布条 题目描述: 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? 输入描述 ...

  9. HDUOJ 2087 剪花布条

    题目链接 Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? Inp ...

最新文章

  1. JVM中可生成的最大Thread数量
  2. 了解一下爬虫技术方方面面
  3. 【预言】分布式缓存成为操作系统的一部分
  4. 机器学习知识点(十)马尔可夫链
  5. skip page cache - SAP gateway的调试
  6. 如何获取大端中的数据_【软件】ProE中各种获取数据方式的区别
  7. mysql根据外键多条件查询_MySQL练习-主外键多表查询
  8. autojs控制台美化
  9. NetApp FAS 混合闪存阵列
  10. python3 使用sorted 实现倒序
  11. SQL语句 —— 查询某天创建的数据(精确到日)
  12. 网络平台运行计算机终端,Terminal是什么意思?Mac如何打开终端Terminal?
  13. 【python基础】递归函数
  14. 三维切面(水平面、冠状面、矢状面)的几种操作
  15. T-test数据分析
  16. ios android 占有率,Android全球占有率28.4% 超iOS一倍
  17. yuv图解(YUV444,YUV422,YUV420,YV12,NV12,NV21)
  18. Python 日期处理
  19. OneNav开源导航系统 简约导航/书签管理器
  20. 蓝桥杯 — 星系炸弹( 在X星系的广袤空间中漂浮着许多X星人造“炸弹”)

热门文章

  1. 树莓派7寸触屏,略贵
  2. 非资深玩家留言频率限制(1024秒限制)
  3. SQL那些事儿(十)--oracle主键、唯一键与索引
  4. Starling移动平台开发初体验
  5. Hack, Everything!
  6. 让C#语言充当自身脚本!——.NET中的动态编译
  7. html ios音乐自动播放muted,video下autoplay属性无效的解决方法(添加muted属性)
  8. git回退历史版本无法上传_Git实用教程(四) | Git本地库操作(查看提交历史、版本前进回退)...
  9. 西安石油大学计算机学院于晓,西安石油大学计算机学院2009届本科毕业设计答辩.doc...
  10. #if defined和#if !defined的含义