news 2026/4/16 15:09:55

【ACWing】4187. 剪花布条

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【ACWing】4187. 剪花布条

题目地址:

https://www.acwing.com/problem/content/4190/

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

输入格式:
输入数据为多组数据,读取到#字符时结束。每组数据仅有一行,为由空格分开的花布条和小饰条。花布条和小饰条都是用可见ASCII字符表示的,不会超过1000 10001000个字符。

注意:这个#应为单个字符。若某字符串开头有#,不意味着读入结束!

输出格式:
对于每组数据,输出一行一个整数,表示能从花纹布中剪出的最多小饰条个数。

数据范围:
对于全部数据,字符串长度≤ 1000 ≤10001000

KMP。代码如下:

#include<iostream>#include<vector>usingnamespacestd;intmain(){ios::sync_with_stdio(false);cin.tie(nullptr);string s,p;staticautobuild_ne=[](string&p){intn=p.size()-1;vector<int>ne(p.size());for(inti=2,j=0;i<=n;i++){while(j&&p[i]!=p[j+1])j=ne[j];if(p[i]==p[j+1])j++;ne[i]=j;}returnne;};while(cin>>s){if(s=="#")break;cin>>p;intn=s.size(),m=p.size();s=" "+s;p=" "+p;autone=build_ne(p);intres=0;for(inti=1,j=0;i<=n;i++){while(j&&s[i]!=p[j+1])j=ne[j];if(s[i]==p[j+1])j++;if(j==m){res++;j=0;}}printf("%d\n",res);}}

每个数据时间复杂度O ( l s + l p ) O(l_s+l_p)O(ls+lp),空间O ( l p ) O(l_p)O(lp)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:40:19

19、互联网娱乐与生活方式的精彩世界

互联网娱乐与生活方式的精彩世界 在当今数字化时代,互联网为我们的生活带来了无尽的便利和娱乐。无论是美食、家居、社交还是音乐,都能在网络上找到丰富的资源。下面为大家介绍一些值得关注的网站。 美食相关网站 Gluten-Free Girl(无麸质女孩) 网址:glutenfreegirl.b…

作者头像 李华
网站建设 2026/4/16 10:40:02

27、上网本使用全攻略:从入门到精通

上网本使用全攻略:从入门到精通 在当今数字化时代,上网本以其便携性和多功能性,成为了许多人工作、学习和娱乐的得力助手。本文将全面介绍上网本的相关知识,包括配置、应用、安全等方面,帮助你更好地使用上网本。 1. 上网本的基本信息 上网本的制造商众多,如宏碁(Ace…

作者头像 李华
网站建设 2026/4/14 2:47:36

光伏组件的“数字体检“:从EL检测到资产增信的完整链路

当一块太阳能组件从生产线走向电站&#xff0c;它的内部健康状况是否被准确记录&#xff1f;这个问题正在重塑光伏资产的价值评估逻辑。电致发光&#xff08;EL&#xff09;检测技术&#xff0c;正从质量筛查工具演变为电站的"数字健康档案"。曜华太阳能组件EL缺陷检…

作者头像 李华
网站建设 2026/4/16 10:55:55

电商微服务网关设计:从零到百万级并发实战

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个电商微服务网关系统&#xff0c;要求&#xff1a;1.基于Spring Cloud Gateway 2.实现商品/订单/支付服务的动态路由 3.集成Sentinel实现熔断降级 4.自定义过滤器处理XSS攻击…

作者头像 李华
网站建设 2026/4/16 12:39:45

Git新手必学:git clone -b命令详解与实操

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个交互式Git学习环境&#xff0c;专门讲解git clone -b命令。包含逐步引导的教程、可视化分支演示和即时练习功能。用户可以通过修改参数实时看到命令执行效果&#xff0c;系…

作者头像 李华