【JZOJ3337】wyl8899的TLE【二分】【哈希】

从零开始跑通3DGS教程:(四)修改(缩放、空间变换)colmap生成的sfm结果 通过colmap进行的sfm的普通方式会丢失场景的物理尺度信息,并且并不在符合一般认知的坐标系下,本文将读取colmap生成的点云和相机pose,将其进行空间变换和缩放之后,重新保存,新保存的结果仍然可以被colmap读取以及进行后续的稠密重建以及3dgs等工作 阅读详情

题目大意:

题目链接:https://jzoj.net/senior/#main/show/3337
给出两个字符串 a , b a,b a,b,在 a a a中改不超过一个字符,求这个新串的前缀为 b b b的字串的最大前缀。


思路:

考虑暴力如何搞定这道题。枚举 a a a串在 b b b串中的位置,然后暴力往后判断修改不超过一个字符的最大前缀长度。时间复杂度 O ( n m ) O(nm) O(nm)。
但是我们发现前缀长度是单调的,也就是说如果 a a a的前 k k k位可以在 b b b中被匹配,那么 a a a的前 k − 1 k-1 k−1位也可以被匹配。所以我们可以二分出第一段匹配的长度,然后下一个字符不能匹配,然后再二分出第二段的长度,总长度就是两段的长度加上1。
判断两个字符串是否匹配显然可以用字符串 h a s h hash hash。
时间复杂度 O ( n log ⁡ n ) O(n\log n) O(nlogn)


代码:

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
typedef unsigned long long ull;

const int N=50010;
const ull base=131;
ull hasha[N],hashb[N],p[N];
int n,m,l,r,mid,ans,len;
char a[N],b[N];

int main()
{
	scanf("%s",a+1);
	scanf("%s",b+1);
	n=strlen(a+1);
	m=strlen(b+1);
	p[0]=1;
	for (int i=1;i<=n;i++)
	{
		hasha[i]=hasha[i-1]*base+(a[i]-'a'+1);
		if (n>=m) p[i]=p[i-1]*base;
	}
	for (int i=1;i<=m;i++)
	{
		hashb[i]=hashb[i-1]*base+(b[i]-'a'+1);
		if (m>n) p[i]=p[i-1]*base;
	}
	for (int i=1;i<=m;i++)
	{
		l=0; r=min(n,m-i+1);
		while (l<=r)
		{
			int mid=(l+r)>>1;
			if (hasha[mid]==hashb[i+mid-1]-hashb[i-1]*p[mid]) l=mid+1;
				else r=mid-1;
		}
		len=l-1;
		l=0; r=min(n-len-1,m-i-len);
		while (l<=r)
		{
			int mid=(l+r)>>1;
			if (hasha[len+mid+1]-hasha[len+1]*p[mid]==hashb[i+len+mid]-hashb[i+len]*p[mid]) l=mid+1;
				else r=mid-1;
		}
		if (len+l>ans) ans=len+l;
	}
	printf("%d\n",min(ans,n));
	return 0;
}
Android 13.0 USB 麦克风音频采集优化:解决延时、杂音和无声问题 摘要:本文针对Android智能会议设备中USB麦克风存在的三大问题(录音延时、概率性杂音和无声)进行了深入分析和优化。通过预填充静音帧降低90%启动延时,分离采集/播放互斥锁消除杂音,采用持久化配置解决无声问题,并新增状态通知机制提升用户体验。优化后测试显示:录音延时从1200-2000ms降至100-200ms,故障率降至0%,CPU占用降低30%。该方案适用于各类USB音频设备和视频会议系统,为低延时音频采集提供了可靠解决方案。 阅读详情

相关推荐

避坑指南:Windows11语言包安装后部分界面仍显示中文的终极解决方案

本文详细解析了Windows11语言包安装后部分界面仍显示中文的问题,提供了从基础到进阶的完整解决方案。通过PowerShell命令、注册表清理和系统文件检查等方法,帮助用户彻底解决语言显示不一致的问题,确保系统界面语言统一。

weixin_29232507的博客 1633

C++有关TLE问题即解决措施以及algorithm下的二分查找

cin,cout之所以效率低,是因为先把要输出的东西存入缓冲区,再输出,导致效率降低,而下面的语句可以来打消iostream的输入 输出缓存,可以节省许多时间,使效率与scanf与printf相差无几 #include <iostream> using namespcae std; int main() { ios::sync_with_stdio(false); ...

Ven 2560

机器视觉检测到底怎么做,经验分享

笔者做机器视觉检测已经有五六年了,也算是对机器视觉的检测技术有了一定的掌握。总的来说,基于机器视觉的检测技术主要包含三个部分:视觉采集模块、后台分析模块和动作决策模块。这几个分类,跟教科书上的有较大差异,很多同学觉得我在杜撰。笔者也不作反驳,因为这是笔者这些年工作经验的总结,自然区别于教科书。下面我们分开来讲这几个模块,同时会把笔者之前的论文做个推荐总结。 所有文章均可在博主的主页中找到,若无法找到,可以用搜索工具。博主的主页: https://blog.youkuaiyun.com/Aoulun 第..

Aoulun的博客 8676

注意!!!codeforce比赛中这样写二分会出现tle(时间超限)

突然想起来前些天偶然看到的一篇官方题解中,在实现二分的时候是直接在循环里写,并没有调用函数,我抱着试一试的心态,心烦意乱的改了一下代码,交了上去。最后神奇的来了,竟然过了!我是个新手,第一次认识到函数调用的开销在cf的比赛中会有这样大的区别,本来我的代码是正确的,只是因为这个小细节浪费了我50分钟的时间,写完这个,E题我都直接懒得看了就睡觉了。可以观察到我代码的时间复杂度可以说完完全全的控制在了nlogn之内,并且题目中2e5的数据量,凭借cf中优秀的评测机按道理实在不应该出现tle。算是看到了一点希望。

weixin_61853647的博客 471

ROS Navigation global_planner框架解析

ROS Navigation global_planner框架解析主要讲一下我看源码总结的框架,如果大家跟着这个框架看源码的话可能会看的比较快。主要讲解global_planner关键配置参数含义及关键函数Astar,Dijkstra,QuadraticCalculator::calculatePotential,PotentialCalculator::calculatePotential,GridPath::getPath,GradientPath::getPath.

Jeff_Lee_的博客 4694

ChatGPT设置密钥后Codex免手机验证:配置顺序与身份凭证复用机制

API Key 是一种用于身份识别的凭证,其核心原理是通过预配置的密钥替代交互式登录流程。在开发工具中,密钥认证优先级通常高于会话认证,当本地存在有效密钥时,工具会直接复用该凭证,从而减少重复验证环节。这种机制的技术价值在于提升开发效率与配置一致性,尤其适用于多设备切换、CI/CD 流水线及编程辅助工具等场景。以 Codex 为例,在 ChatGPT 界面提前配置 API 密钥后,Codex 启动时可读取持久化存储的密钥,避免触发手机号验证,实现身份凭证的跨入口复用。

weixin_33940469的博客 468

2159-Problem H.ly的小迷弟(二分查找解决TLE问题)

参考博客链接  Problem H: H.ly的小迷弟 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 168  Solved: 62 [Submit][Status][Web Board] Description 众所周知ly虽然是个小胖子,但是长得还是很好看的,所以她有很多小迷弟(bu cun zai de),但是ly当然不是个只看颜值...

欢迎访问方偲的博客 585

换频道——假想《道德经》与量子力学的一些联系

之前看到一位AI PM的前辈分享了自己对于PM境界的看法: 境界一,行事被放心。 境界二,独立主导产品线从0到1,做正确的事,并把事做正确。 境界三,一切以灵魂境界为基础,产品作为其理念的衍生。 对于我,3个月尝试于目标而无获,但塞翁失马焉知非福。自己已经具备境界一,虽然境界二尚未成熟,但境界三却有幸有所思考。 今天,往澳门的动车途中有感而发,为随笔。

1020

[博弈论]JZOJ 3339 wyl8899和法法塔的游戏

Description 法法塔和wyl8899都喜欢玩游戏。但是每次玩游戏法法塔都被wyl8899虐。为了安慰可怜的法法塔,wyl8899决定大发慈悲,修改了一下游戏规则。是这样的,这儿有一堆石子排成一列,每次wyl8899让hza选择一个区间进行游戏。游戏嘛,就是采用最普通的规则:两人轮流操作,每次选择一堆石子,取掉不为0的石子数,没法操作者失败。法法塔要做的是这样的:我们现在定...

weixin_30824479的博客 247

059、RealBasicVSR 实战:真实场景视频超分的退化建模与优化技巧

本文分享了RealBasicVSR在真实场景视频超分中的实战经验。针对传统方法假设理想化下采样导致的性能瓶颈,重点阐述了三个关键技术点:1)通过可学习退化编码器建模复杂未知退化过程,避免手动设计退化参数的局限;2)采用双向传播和DCN对齐增强时序一致性;3)组合多种损失函数并优化训练策略(如余弦退火学习率、随机退化增强)。作者结合项目实践指出了显存管理、训练时长、评估指标等常见问题,并给出实用建议:优先验证数据退化复杂度,重视数据预处理,合理调整超参数。文章强调真实场景视频超分的核心在于让模型自适应未知退化

ai技术增长的博客 180

【YOLOv8改进-注意力机制】BRA(bi-level routing attention ):双层路由注意力

【YOLOv8改进-注意力机制】BRA(bi-level routing attention ):双层路由注意力我们提出了一种新颖的动态稀疏注意力机制,通过双层路由实现更加灵活且具有内容感知的计算分配。

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 3167

jzoj3337. wyl8899的TLE

Description wyl8899今天也很刻苦的在做老师布置下来的题目! 这一天老师布置的题目是这样的: 给出两个仅含小写字母的字符串A和B,输出最大的k,使得A[1…k]是B的子串。 A和B的长度都不会超过50000。 很显然他并不知道正确的做法,但是他居然卡着时间过掉了老师给的数据! 你找到了他提交给老师的程序,经过测试你惊讶的发现,他的程序运行时间恰好是最终答案,单位是毫秒。 你现在找到...

RainbowCrown_CGH's blog 489

Allegro Design Entry HDL(OrCAD Capture HDL)原理图是设计快速入门图文教程

Allegro Design Entry HDL是Cadence公司开发的原理图设计工具,也可与Allegro PCB设计工具无缝对接,虽然板级开发中不如Design Entry CIS(又名 OrCAD Capture CIS)的使用那么广泛,但是由于Design Entry HDL支持芯片的开发,所以有不少公司尤其是芯片背景公司,选择使用Design Entry HDL进行原理图设计。两个原理图开发工具的使用方法大同小异,本文简单介绍使用Allegro Design Entry HDL开始一个新的设计,

fydar的博客 4118

jzoj3337-[NOI2013模拟]wyl8899的TLE【字符串hash,二分】

正题 题目大意 两个字符串A,BA,BA,B。可以修改AAA中的一个字符使得AAA中的1∼k1\sim k1∼k是BBB的子串,求kkk的最大值。 解题思路 先将AAA和BBB字符串hashhashhash,然后枚举BBB作为子串的起始位置,然后二分出不修改字符的第一个不相等处xxx,然后从x+1x+1x+1个字符继续开始二分,也就是表示跳过xxx这个字符。 时间复杂度O(n log...

QuantAsk 598

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【JZOJ3337】wyl8899的TLE

description wyl8899今天也很刻苦的在做老师布置下来的题目! 这一天老师布置的题目是这样的: 给出两个仅含小写字母的字符串A和B,输出最大的k,使得A[1…k]是B的子串。 A和B的长度都不会超过50000。 很显然他并不知道正确的做法,但是他居然卡着时间过掉了老师给的数据! 你找到了他提交给老师的程序,经过测试你惊讶的发现,他的程序运行时间恰好是最终答案,单位是毫秒。 你现在找到...

路人黑的纸巾 695

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【二分答案】JZOJ_3337 wyl8899的TLE

题意 给出AAA、BBB两个字符串,至多将AAA串修改一个字符,使得A[1..k]A[1..k]A[1..k]是BBB的子串且kkk最大。 思路 枚举BBB的开头,二分LCPLCPLCP,然后用字符串hashhashhash判断。设LCP(A,B[i..m])LCP(A,B[i..m])LCP(A,B[i..m])为lenlenlen,显然是要修改A[len+1]A[len+1]A[len+1]的...

GOODPLACE 300

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

[JZOJ3337] 【NOI2013模拟】wyl8899的TLE

题目 题目大意 给你两个字符串AAA和BBB,可以修改AAA中的一个字符,求修改后最长的AAA的前缀,使它是BBB的子串。 思考历程 看到这道题之后,第一眼想到的就是后缀自动机! BBB的子串,意味着可以把BBB建立一个后缀自动机,然后在上面跑…… 刚开始的想法是将AAA在上面跑,并且试着修改后面一个字符,看看剩下的可以跑多长…… 于是问题就转化成求这样的一个东西:问AAA的某个后缀从后缀自动机...

A1847225889的博客 287

JZOJ 3337. 【NOI2013模拟】wyl8899的TLE

二分+hash或者后组数组,但听说暴力踩标算???

Ajwallet 486

[后缀数组]JZOJ 3337 wyl889的TLE

Description wyl8899今天也很刻苦的在做老师布置下来的题目!这一天老师布置的题目是这样的:给出两个仅含小写字母的字符串A和B,输出最大的k,使得A[1..k]是B的子串。A和B的长度都不会超过50000。很显然他并不知道正确的做法,但是他居然卡着时间过掉了老师给的数据!你找到了他提交给老师的程序,经过测试你惊讶的发现,他的程序运行时间恰好是最终答案,单位是毫秒。你现...

weixin_30824479的博客 195

【CSP-S 2019】【洛谷P5658】括号树【dfs】【二分】

入门组选手承受范围之内233

stoorz 647

【牛客练习赛46-A】华华教奕奕写几何【二分】

题目大意: 题目链接:https://ac.nowcoder.com/acm/contest/894/A 给出红色部分面积,求大圆的最短直径(两小圆直径之和等于大圆直径)。 思路: orz WYC,XYYdalaoorz\ WYC,XYY dalaoorz WYC,XYYdalao反正我是没有看出开个根号就好了。 先把问题转化为圆中的问题。 此时红色部分面积就为2s2s2...

stoorz 487

【洛谷P4343】自动刷题机【二分答案】

题目大意: 题目链接:https://www.luogu.org/problem/P4343 曾经发明了信号增幅仪的发明家 SHTSC 又公开了他的新发明:自动刷题机——一种可以自动 AC 题目的神秘装置。 自动刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写程序。每秒,自动刷题机的代码生成模块会有两种可能的结果: 写了xxx行代码 心情不好,删掉了之前写的yyy行代码。...

stoorz 454

【洛谷P1462】通往奥格瑞玛的道路【二分】【最短路】

题目大意: 题目链接:https://www.luogu.org/problemnew/show/P1462 给出一张无向图,每个点和边都有权值。求从111到nnn的所有路径中,在边权不超过bbb的情况下点权的最大值最小。 思路: 这道题很明显是要二分答案的。因为要使最大的点权尽量小,所以就二分这个最大的点权midmidmid,然后跑SPFASPFASPFA,要求路径上的点的权值都不能超过mid...

stoorz 417

Best Cow Fences【二分】

题目大意: 给出一个数列,求长度超过LLL的平均值最大的子串。 思路: 考虑二分答案,将a[i]a[i]a[i]全部减去ansansans,那么题目转化为“求长度超过LLL的和为正数的子串”。 注意误差! 代码: #include &amp;lt;cstdio&amp;gt; #include &amp;lt;iostream&amp;gt; #include &amp;lt;cmath&a

stoorz 416

【JZOJ4256】平均数【二分】

题目大意: 题目链接:https://jzoj.net/senior/#main/show/4256 给出包含一个NNN个整数的数组AAA。找出一段长度至少为mmm的连续序列,最大化它的平均值。 思路: 很明显这道题的答案满足单调性。若可以找出一段区间的平均值超过kkk,那么必然可以找到一段区间的平均值超过k−1k-1k−1。 那么可以考虑二分答案。 设二分的答案为ansansans 若 (∑i...

stoorz 361
上一篇: 随机跳题挑战总结 Part4
下一篇: 【洛谷P2197】【模板】nim游戏【博弈论】
stoorz1023
博客等级 码龄9年 101粉丝 595原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值