news 2026/5/26 6:03:30

【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/5/26 3:56:53

Python字符串拆分:传统循环 vs 现代方法对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 编写一个性能对比程序&#xff1a;1) 用纯Python实现字符串拆分函数 2) 使用内置split()方法 3) 使用re.split()处理复杂模式。添加计时功能比较三者处理100万条数据的耗时&#xf…

作者头像 李华
网站建设 2026/5/26 6:57:51

Iced并发编程终极指南:5个技巧让你的UI永不卡顿

Iced并发编程终极指南&#xff1a;5个技巧让你的UI永不卡顿 【免费下载链接】iced 项目地址: https://gitcode.com/gh_mirrors/ice/iced 你是否曾经因为应用程序在处理复杂任务时界面冻结而感到沮丧&#xff1f;按钮点击无响应、进度条停滞不前&#xff0c;这种糟糕的用…

作者头像 李华
网站建设 2026/5/25 8:26:34

5分钟用MSE验证你的回归模型原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个快速验证回归模型原型的模板代码。使用随机生成的数据&#xff0c;构建简单线性回归模型&#xff0c;计算并输出MSE值。要求代码简洁&#xff0c;包含数据生成、模型训练、…

作者头像 李华
网站建设 2026/5/26 9:26:15

5分钟搞定Maxun元数据筛选:从零配置到高级过滤完整指南

5分钟搞定Maxun元数据筛选&#xff1a;从零配置到高级过滤完整指南 【免费下载链接】maxun &#x1f525;Open Source No Code Web Data Extraction Platform. Turn Websites To APIs & Spreadsheets With No-Code Robots In Minutes&#x1f525; 项目地址: https://git…

作者头像 李华
网站建设 2026/5/26 4:14:06

基于FAQ文档构建知识图谱实战教程:结合LLM打造智能问答系统!

简介 本文介绍了一种基于FAQ文档构建知识图谱并结合LLM的问答系统实现方法。通过从用户问题中抽取实体和关系&#xff0c;在知识图谱中查找相关路径&#xff0c;然后将这些信息与问题一起提供给LLM生成答案。文章详细展示了代码实现过程&#xff0c;并讨论了系统局限性及改进方…

作者头像 李华