【字符串】刷题

news/2024/5/20 23:22:42/文章来源:https://blog.csdn.net/m0_74183164/article/details/129630175

P4173残缺的字符串

心得:

这道题,我觉得是不难的,代码逻辑很清晰,但是提交就是有问题

最后发现两个问题:

  1. scanf输入字符后要用getchar() 吞回车 !!!!(天坑

scanf 输入时,不管输入什么,最后“敲”的回车都会被留在缓冲区,这里也不例外。输入字符串时最后“敲”的回车也会被留在缓冲区,如果紧接着要给一个字符变量赋值的话,那么还没等你输入系统就自动退出来了。因为系统自动将回车产生的字符 '\n' 赋给该字符变量了,所以此时对字符变量赋值前要首先清空缓冲区

2.在位置1处忘了continue,导致已经确定一次相等之后l=2

(今天洛谷崩了没办法评测,但我相信应该是能AC的,埋个坑。

竟然g了,果然菜鸟就是菜鸟

#include<bits/stdc++.h>
using namespace std;
const int N=3e5+10;
int m,n;
char a[N];
char b[N];
int arr[N];
int cnt;
int main()
{scanf("%d %d",&m,&n);getchar();for(int i=1;i<=m;i++){scanf("%c",&a[i]);}getchar();//加了getchar()运行结果都不一样,可见getchar的重要性 for(int i=1;i<=n;i++){scanf("%c",&b[i]);}int l=1;for(int i=1;i<=n;i++)//遍历b的每一个位置 {if(b[i]==a[l]||b[i]=='*'||a[l]=='*'){if(l==m)//完成了一次 {arr[i+1-l]=1;cnt++;l=1;//完成后l要复原 continue; //1}l++;}else{l=1;}}printf("%d\n",cnt);if(cnt>0)for(int i=0;i<N;i++){if(arr[i]!=0){printf("%d ",i);}}return 0;
}

点开题解都是我不会的东西(copy一下大佬的说法,埋个坑

字符串匹配有三种方式:

  1. 哈希

  1. KMP/Z

  1. FFT

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_274440.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言小程序:通讯录(静态版)

哈喽各位老铁们&#xff0c;今天给大家带来一期通讯录的静态版本的实现&#xff0c;何为静态版本后面会做解释&#xff0c;话不多说&#xff0c;直接开始&#xff01;关于通讯录&#xff0c;其实也就是类似于我们手机上的通讯录一样&#xff0c;有着各种各样的功能&#xff0c;…

30天从零到1创业螺旋式

趁梦想还在&#xff0c;想去的地方&#xff0c;现在就去&#xff1b;想做的事情&#xff0c;现在就做。一开始立刻启动的你的项目&#xff0c;安排好时间计划&#xff0c;拆分微模块&#xff0c;每天花20分钟去完善产品&#xff0c;去改变世界。可以为自己的创意设置临时办公室…

RK3588平台开发系列讲解(显示篇)DP显示调试方法

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、查看 connector 状态二、强制使能/禁⽤ DP三、DPCP 读写四、Type-C 接口 Debug五、查看 DP 寄存器六、查看 VOP 状态七、查看当前显示时钟八、调整 DRM log 等级沉淀、分享、成长,让自己和他人都能有所收获!😄…

【数据结构】链队列的C语言实现

队列 1.队列的概念 队列 和栈一样&#xff0c;是一个 特殊的线性表。 队列只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表。进行 插入操作 的一端称为 队尾&#xff0c;进行 删除操作 的一端称为队头。 队列中的元素遵守 先进先出(First I…

【类的继承与派生的知识点】

文章目录类的继承与派生的知识点类的继承与派生&#xff1a;类成员的访问&#xff1a;类型兼容规则&#xff1a;一个公有派生类的对象在使用上可以被当成基类的对象&#xff0c;反之不行单继承与多继承派生类的构造与析构类成员的标识与访问类的继承与派生的实验结果类型兼容规…

Baumer工业相机堡盟相机如何使用Sharpening图像锐化功能( Sharpening图像锐化功能的优点和行业应用)(C++)

项目场景 Baumer工业相机堡盟相机是一种高性能、高质量的工业相机&#xff0c;可用于各种应用场景&#xff0c;如物体检测、计数和识别、运动分析和图像处理。 Baumer的万兆网相机拥有出色的图像处理性能&#xff0c;可以实时传输高分辨率图像。此外&#xff0c;该相机还具…

【计算机网络】如何解决TCP粘包问题?

【计算机网络】如何解决TCP粘包问题&#xff1f; 文章目录【计算机网络】如何解决TCP粘包问题&#xff1f;如何理解字节流&#xff1f;如何解决粘包&#xff1f;固定长度的消息特殊字符作为边界自定义消息结构如何理解字节流&#xff1f; 之所以会说 TCP 是面向字节流的协议&a…

RK3588编译环境Ubuntu20.04编译配置-增加交换内存

迅为提供的编译环境 Ubuntu20.04 默认配置了交换内存是 9G&#xff0c;如果在编译过程中&#xff0c;因内 存不够而编译报错&#xff0c;可以参考本小节进行设置。 这里举例分配 5G 交换内存。 在开始之前&#xff0c;使用命令检查一下您的 ubuntu 的 swap 分区。 sudo swa…

Android进阶面经,面试10余家经验分享,拿到offer真不难~

前言 我们都知道面试大厂主要就是考察程序员技术方向的专业技能&#xff0c;Java开发主要考察的就是Java方面的专业技能&#xff0c;而Android岗位的 专业技能 就是Android程序员面试的重要考察方向。 大厂的招聘条件是明牌的&#xff0c;但技术这一块却难倒了大部分的人。 面…

蓝桥杯刷题冲刺 | 倒计时18天

作者&#xff1a;指针不指南吗 专栏&#xff1a;蓝桥杯倒计时冲刺 &#x1f43e;马上就要蓝桥杯了&#xff0c;最后的这几天尤为重要&#xff0c;不可懈怠哦&#x1f43e; 文章目录0.知识点1.乳草的入侵今天写 搜索题 0.知识点 DFS 设计步骤 确定该题目的状态&#xff08;包括边…

服务器boa移植

服务器boa移植 文章目录服务器boa移植1.下载boa2.解压3.安装词法解析器4.修改源码5. 编译、创建配置文件6.修改配置文件boa.conf7.运行测试1.下载boa Boa Webserver http://www.boa.org/ 2.解压 tar -xf boa-0.94.13.tar.gz3.安装词法解析器 sudo apt-get install bisonsud…

我们为什么不能忽视业务只讲数据治理?_光点科技

数据治理是一项重要的业务实践&#xff0c;可以帮助组织更好地管理和利用数据。然而&#xff0c;一些企业错误地将数据治理视为一项独立的技术实践&#xff0c;而忽略了业务需求。那么&#xff0c;为什么不能忽视业务&#xff0c;只讲数据治理呢&#xff1f;首先&#xff0c;数…

网络基础知识和常用命令

IP、子网掩码、网关、DNS、端口号网络的基本概念客户端:应用 C/S&#xff08;客户端/服务器&#xff09; B/S&#xff08;浏览器/服务器&#xff09;服务器&#xff1a;为客户端提供服务、数据、资源的机器请求&#xff1a;客户端向服务器索取数据响应&#xff1a;服务器对客户…

H2数据库

H2是一个用Java开发的嵌入式数据库&#xff0c;它本身只是一个类库&#xff0c;可以直接嵌入到应用项目中。 H2简介 H2是一个Java编写的关系型数据库&#xff0c;它可以被嵌入Java应用程序中使用&#xff0c;或者作为一个单独的数据库服务器运行。 H2数据库的前身是 Hypersoni…

线段树SegmentTree

&#x1f34f;&#x1f350;&#x1f34a;&#x1f351;&#x1f352;&#x1f353;&#x1fad0;&#x1f951;&#x1f34b;&#x1f349;&#x1f95d; 什么是线段树&#xff0c;它能解决什么样的问题&#xff1f; 文章目录&#x1f36d;问题引入&#x1f95d;线段…

代码随想录|day21|二叉树part07 ● 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先

530.二叉搜索树的最小绝对差 链接&#xff1a;代码随想录 需要领悟一下二叉树遍历上双指针操作&#xff0c;优先掌握递归 第一次做&#xff0c;理解错误&#xff0c;认为只需要以节点为单位&#xff0c;认为由于是二叉搜索树&#xff0c;所以中序遍历一定是一个连续的有序序列…

vue3+vite+ts 搭建脚手架01创建vite项目并且在项目中初次使用router

vue3vite 搭建脚手架01创建vite项目并且在项目中使用router 1.使用yarn安装vite项目 yarn create vite 搭建vite项目 在开发语言中选择vuets2.安装现在最新的 vue-router4 yarn add vue-router4 在packger中检查是否成功安装3.简单配置router文件 在项目中新建views和…

(19)C#传智:CSS,选择器,样式(第19天)

vs2022保存html项目时&#xff0c;偶尔会有死机&#xff0c;只得强行关闭重新打开。 一、CSS简介 CSS(Cascading Style Sheet)层叠样式表。能让网页制作者有效的定制&#xff0c;改善网页的效果。 CSS是对Html的补充&#xff0c;它很好地控制了网页的显示效果。并实现网页…

A.[OCR]基于PaddleOCR的多视角集装箱箱号检测识别,实现检测识别模型串联推理。

基于PaddleOCR的多视角集装箱箱号检测识别 一、项目介绍 集装箱号是指装运出口货物集装箱的箱号&#xff0c;填写托运单时必填此项。标准箱号构成基本概念&#xff1a;采用ISO6346&#xff08;1995&#xff09;标准 标准集装箱箱号由11位编码组成&#xff0c;如&#xff1a;…

UniApp + SpringBoot 实现接入支付宝支付功能和退款功能

一、支付宝开放平台设置 注册支付宝支付功能需要个体工商户或企业才可以&#xff01;需要有营业执照才能去申请哦&#xff01; 1、登录到控制台 进入支付宝开放平台 控制台 2、开发设置 3、产品绑定APP支付 如果没有绑定APP支付就会报商家订单参数异常&#xff0c;请重新发起…