(KMP)剪花布条 -- hdu -- 2087
http://acm.hdu.edu.cn/showproblem.php?pid=2087
剪花布条
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 11793 Accepted Submission(s): 7574
#include<stdio.h>
#include<string.h> #define N 1005
char a[N], b[N];
int Next[N], sum; void FindNext(int B)
{
int i=, j=-;
Next[] = -; while(i<B)
{
if(j==- || b[i]==b[j])
Next[++i] = ++j;
else
j = Next[j];
}
} void KMP(int A, int B)
{
int i=, j=;
FindNext(B); while(i<A)
{
while(j==- || (a[i]==b[j] && i<A && j<B))
i++, j++;
if(j==B)
{
sum++;
i+=B-;
} j = Next[j];
}
} int main()
{ while(scanf("%s", a), strcmp(a, "#"))
{
scanf("%s", b); int A=strlen(a), B=strlen(b); sum = ; KMP(A, B); printf("%d\n", sum);
}
return ;
}
(KMP)剪花布条 -- hdu -- 2087的更多相关文章
- 剪花布条 HDU - 2087
剪花布条 HDU - 2087 要求各个匹配出来的子串不重叠的kmp.实际上直接贪心从前往后找,每找到一个就把当前j标为0即可.(一般kmp是标为f[j]) #include<cstdio> ...
- 剪花布条 HDU - 2087(kmp,求不重叠匹配个数)
Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? Input 输入 ...
- 【kmp】 剪花布条 HDU - 2087
[题意概述] [解题思路] 从左往右找,看有几个匹配的字符串,但要注意例如 aaaaaa aa的输出是3 而不是5,可以这样理解:画布需要减去,一旦减去也就没有了的 [AC] #include< ...
- hdu 2087 剪花布条 KMP多次匹配
剪花布条 Problem Description 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? I ...
- HDU——2087剪花布条
剪花布条 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 剪花布条(kmp)
欢迎参加——每周六晚的BestCoder(有米!) 剪花布条 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ...
- hdu_2087 剪花布条(kmp)
剪花布条 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- hdoj 2087 剪花布条
剪花布条 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- HDU-2087 剪花布条
http://acm.hdu.edu.cn/showproblem.php?pid=2087 剪花布条 Time Limit: 1000/1000 MS (Java/Others) Memory ...
随机推荐
- ubuntu 软件包系统已损坏 解决方法
sudo apt-get clean sudo apt-get -f install sudo apt-get upgrade
- SOA (面向服务的架构)
面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台.操作系统和编程语 ...
- mac版IDEA使用maven的问题
在idea中执行maven碰到这个错误:invalid target release: 1.7.首先做了以下操作 1.查看$JAVA_HOME echo $JAVA_HOME /Library/Jav ...
- Linux下tar.gz 安装
将安装文件拷贝至你的目录中 如果是以root身份登录上的,就将软件拷贝至/root中. cp xxx.tar.gz /root 解压缩包 tar xvzf xxx.tar.gz 切换到安装目录下 cd ...
- PTA 习题集5-18 打印选课学生名单(哈希)
假设全校有最多40000名学生和最多2500门课程.现给出每个学生的选课清单,要求输出每门课的选课学生名单. 输入格式: 输入的第一行是两个正整数:N(≤40000),为全校学生总数:K(≤2500) ...
- 15-js提交表单的简单检测实例
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- TextView UI美化-------自适应字体控件
http://www.cnblogs.com/psuwgipgf/p/4874158.html 一. TextView字体随大小变化自适应TextView 实现依靠于第三方类库 第三方类来源: htt ...
- actionBar_Tab导航
actionBar配合碎片使用 初始化actionBar要注意设置actionbar的导航模式 package com.qf.actionbar04_tab; import java.io.File ...
- Sql自定义表类型批量导入数据
-- 创建自定义表类型 CREATE TYPE [dbo].[App_ProductTable] AS TABLE( [p_name] [varchar](50) NOT NULL, [p_audio ...
- c语言使用指针实现模拟java/c# string.concat字符串串联方法
#include <stdio.h> void _strcat(char *, const char *); int main(void) { char source[] ="V ...