当前位置: 首页 > news >正文

C++课后习题训练记录Day137

1.练习项目 :

题目描述:

小 Z 同学每天都喜欢斤斤计较,今天他又跟字符串杠起来了。

他看到了两个字符串 S1 S2 ,他想知道 S1 在 S2 中出现了多少次。

现在给出两个串 S1,S2(只有大写字母),求 S1 在 S2 中出现了多少次。

输入描述

共输入两行,第一行为 S1,第二行为 S2。

1<len(s1)<len(s2)<106,字符只为大写字母或小写字母。

输出描述

输出一个整数,表示 S1 在 S2 中出现了多少次。

2.选择课程

在蓝桥云课中选择题库,选择题号2047并开始练习。

3.开始练习

(1)KMP算法 :

#include<bits/stdc++.h>
using namespace std;

const int N = 1e6+10;
char s[N],p[N];
int nex[N];

int main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>p+1;int m=strlen(p+1);
cin>>s+1;int n=strlen(s+1);

//get next
nex[0]=nex[1]=0;
for(int i=2,j=0;i<=m;i++){
while(j&&p[i]!=p[j+1])j=nex[j];
if(p[i]==p[j+1])j++;
nex[i]=j;
}

int ans=0;
for(int i=1,j=0;i<=n;i++){
while(j&&s[i]!=p[j+1])j=nex[j];
if(s[i]==p[j+1])j++;
if(j==m)ans++;
}

cout<<ans<<'\n';
return 0;
}

(2)字符串哈希

#include<bits/stdc++.h>
using namespace std;

const int N = 1e6+10;
char s[N],p[N];
typedef unsigned long long ull;
const ull base = 131;
ull h1[N],h2[N],b[N];

ull getHash(ull h[],int l,int r)
{
return h[r]-h[l-1]*b[r-l+1];
}

int main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>p+1;int m=strlen(p+1);
cin>>s+1;int n=strlen(s+1);
b[0]=1;
for(int i=1;i<=n;i++){
b[i]=b[i-1]*base;
h1[i]=h1[i-1]*base+(int)p[i];
h2[i]=h2[i-1]*base+(int)s[i];
}
int ans=0;
for(int i=1;i+m-1<=n;i++){
if(getHash(h1,1,m)==getHash(h2,i,i+m-1))ans++;
}


cout<<ans<<'\n';
return 0;
}

(3)检验结果

对此代码进行检验,检验后无报错,提交此代码,判题结果为正确100分。

(4)练习心得:注意每段代码末尾的分号是否存在 ,如不存在则需即使补充;输入法 是否切换为英语模式;语法是否错误。

http://www.jsqmd.com/news/1066821/

相关文章:

  • QMCDecode解密指南:3步解锁QQ音乐加密音频,Mac用户必备的格式转换神器
  • 中国汉堡加盟实操技术分享:模式、扶持与盈利逻辑拆解 - 起跑123
  • NCE外汇:把投教内容做扎实,长期观察者更容易感受到的要点
  • NaviFormer:基于Transformer与深度强化学习的端到端机器人导航规划
  • Proxelar 0.4.5 官方版下载(Windows x64,夸克网盘)
  • 2026成都黄金上门回收哪家强?教你拒绝上门压价、线上套路 - 奢品小当家
  • OpenClaw本地AI工作流部署:PowerShell+Ollama+qwen2.5:7b实战指南
  • 对话式语音虚假信息检测:从声学特征到多模态融合的实战解析
  • 深圳坪山区黄金回收六家门店当天变现到账 - 上门黄金回收
  • LLM驱动的心理健康因果图生成技术解析
  • 猫抓浏览器扩展:智能视频资源捕获工具,让网页视频下载变得简单高效
  • 2026西安黄金回收6家正规门店横向测评,卖黄金避坑完整指南 - 奢侈品回收评测
  • 濮阳卖黄金别乱找!本地靠谱回收门店全盘点,久美回收凭实在流程圈粉本地人 - 行行星
  • 预算规划指南:光学轮廓仪价格与推荐
  • 2026深圳标签印刷厂家:深圳说明书印刷工厂优选 - 栗子测评
  • 后端程序员转AI:收藏这份进阶指南,轻松拥抱大模型时代!
  • 沈阳回收黄金不踩坑,实测筛选持证靠谱商家 - 逸程
  • 孩子早恋怎么办?吉林省农安市资质全面的军事化特训基地实力推荐 - 武汉中职最新信息发布
  • 2026 厦门别墅车库门定制安装本地商家 TOP5 实测测评 - LYL仔仔
  • Lenovo Legion Toolkit:拯救者笔记本性能调优的终极免费方案
  • 抖音批量下载神器:5分钟快速掌握免费去水印技巧
  • 铜川黄金回收计价详解六家实体门店流程实测 - 余生黄金回收
  • 2026广州黄埔知识城鱼珠片区卖金攻略,工厂囤金批量处置实体门店推荐 - 奢品小当家
  • Windows Cleaner:告别C盘爆红,让Windows系统重获新生
  • 湖州闲置黄金变现避坑攻略 2026六月正规连锁回收门店汇总 - 润富黄金回收
  • 警惕武汉东西湖区黄金回收陷阱,安全变现指南 - 上门黄金回收
  • NLP技术赋能社区信息桥梁:从新闻理解到多语言服务实践
  • 2026五大四川变压器回收企业市场观察:从合规处置到企业对接的全流程梳理 - 品研笔录
  • 微信数据库解密终极指南:3步轻松获取你的聊天记录
  • 2026 深圳腕表回收行业实测:门店梯队评级 + 安全交易细则 - 开心测评