51Nod-1089 最长回文子串 V2(Manacher算法)

51nod 1089 - 最长回文子串 V2(Manacher算法)- Manacher模板题 1089 最长回文子串 V2(Manacher算法) Time Limit: 1000 MS Memory Limit: 131,072.0 KB 题目描述 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 输入 输入Str(Str... 阅读详情

1089 最长回文子串 V2(Manacher算法)
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题
回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。
输入一个字符串Str,输出Str里最长回文子串的长度。
Input
输入Str(Str的长度 <= 100000)
Output
输出最长回文子串的长度L。
Input示例
daabaac
Output示例
5

#include<bits/stdc++.h>
using namespace std;
const int maxn=100000*2+4;
char str[maxn],a[maxn];
int p[maxn];
void pk(int n)
{
    int i;
    int mx = 0;
    int id;
    for(i=1; i<n; i++)
    {
        if( mx > i )
            p[i] = min( p[2*id-i], mx-i );
        else
            p[i] = 1;
        for(; str[i+p[i]] == str[i-p[i]]; p[i]++)
            ;
        if( p[i] + i > mx )
        {
            mx = p[i] + i;
            id = i;
        }
    }
}


int main()
{
    int n,i,j,l,ans,len;
    while(cin>>a){
        ans=0;
        len=strlen(a);
        str[0]='$';
        str[1]='#';
        l=2;
        for(i=0;i<len;i++) {
            str[l++]=a[i];
            str[l++]='#';
        }
        pk(l);
        for(i=0;i<l;i++) {
            ans=max(ans,p[i]);
        }
        cout<<ans-1<<endl;
    }
    return 0;
}
软件自动化测试脚本如何编写,编写自动化测试脚本的几点注意事项 我们需要自动化测试脚本的原因:1、验收测试是一项非常复杂和费力的被用来确保软件质量的环节。它的目的就是使软件能得到充分运行并且能使其符合原始需求。2、测试的目的无非就是满足了两个结果:测试通过或测试不通过。为了能实现每个测试结果,必须要明确每个测试用例。并且对于整个系统而言在合同中必须定义测试用例的失败标准,而且这个失败标准数必须是可接受的。3、测试用例的通过条件必须有一个清晰的标准,标准可以被定... 阅读详情

相关推荐

Android SSL证书固定实战:原理、方案与避坑指南

SSL/TLS协议是保障网络通信安全的基石,其核心原理是通过非对称加密和数字证书实现身份认证与数据加密。在移动应用开发中,为了防止中间人攻击,证书固定技术应运而生,它通过将服务器证书或公钥的哈希值预置在应用内,强制校验服务器身份,从而大幅提升通信链路的安全性。这一技术对于金融、电商等高安全要求场景尤为重要。本文聚焦Android平台,深入解析SPKI固定、Network Security Configuration与OkHttp CertificatePinner等主流方案,并针对证书更新、调试兼容等常见痛

weixin_33935636的博客 403

【51nod】1089 最长回文子串 V2(Manacher算法)

1089 最长回文子串 V2(Manacher算法) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 

chutzpah 748

Vivado FFT IP核配置与实战:FPGA信号处理硬件加速指南

快速傅里叶变换(FFT)是数字信号处理(DSP)中的核心算法,用于将时域信号转换到频域进行分析。其原理基于离散傅里叶变换(DFT),通过蝶形运算的分解与复用,大幅降低了计算复杂度。在工程实践中,软件实现的FFT难以满足高速实时处理的需求,因此硬件加速方案至关重要。FPGA凭借其并行架构和可定制性,成为实现高性能FFT的理想平台。通过集成专用的FFT IP核,如Vivado中的Pipelined Streaming I/O架构,可以构建流水线化的计算引擎,实现极低延迟和高吞吐量的连续数据流处理。这种硬件方案特

weixin_42536863的博客 647

51nod 1089 最长回文子串 V2 (Manacher算法)

回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度  Output 输出最长回文子串的长度L。 Input示例 daabaac Output示例 5  这里,我介绍一下O(n)回文串处理的一种方

AK_HuangYC的博客 1396

特斯拉 Model 3解析(九)特斯拉 Model 3 自动驾驶域控制器硬件架构

硬件层:车规级高密度主板 → PI/SI优化到极致传感器层:三目摄像头主导视觉,雷达补充冗余,超声波保证近距设计理念:依靠芯片算力最大化视觉潜力,而不是堆传感器这套思路的优点是:成本可控、量产快、迭代快。缺点是:极端场景下感知鲁棒性不足。纯视觉方案短期可行,但中长期必然要重新引入高分辨率雷达甚至固态LiDAR作为冗余。电源/信号完整性会越来越关键,未来域控板设计会越来越像数据中心服务器。

weixin_43199439的博客 1786

LabVIEW与MySQL实时数据存储:传感器采集与数据库同步实践

本文详细介绍了如何将LabVIEW与MySQL结合,实现传感器数据的实时采集与高效存储。通过设计合理的数据库表结构、配置LabVIEW数据库连接工具包,并编写核心的采集与存储VI,构建了稳定可靠的数据链路。文章重点分享了批量插入、连接管理、时间同步等关键优化技巧与避坑指南,帮助工程师应对工业监控、环境监测等场景下的实时数据同步挑战。

weixin_29281915的博客 262

51Nod 1089 最长回文子串V2 【Manacher算法】

描述 题解 回文分为偶回文和奇回文,在处理就问题上比较繁琐,所以这里使用一个技巧,具体做法是:在字符串首尾及各字符间各插入一个字符(该字符从未在串中出现)。 例如:s='daabaacabba',转化为s_new='$#d#a#a#b#a#a#c#a#b#b#a#',上述的s中起初有一个奇回文aadaa和一个偶回文abba,被转化为#a#a#d#a#a#和#a#b#b#a#,长度都转化成奇数了。...

MD 302

Mamba-YOLO实战:环境配置+模型训练+精度调优全流程指南(附Colab代码)

在目标检测领域,一场由状态空间模型引发的技术革新正在悄然改写行业格局。近期国际顶级学术期刊连续发布的YOLOv5_mamba、FER-YOLO等突破性成果,不仅刷新了检测精度记录,更开创了结构化状态空间模型(SSM)与经典检测框架的创新融合范式。当前该领域涌现的十大标杆性研究,已在以下维度取得突破性进展:√ 遮挡目标识别准确率提升38%√ 小样本场景泛化能力增强2.7倍√ 视频流检测延迟降低至17ms√ 多目标交叉干扰抑制效果达SOTA。

2501_90555291的博客 1583

51Nod 1089 最长回文子串V2(Manacher算法)

51Nod 1089 最长回文子串V2(Manacher算法) 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 输入 输入Str(Str的长度 <= 100000) 输出 输出最长回文子串的长度L。 输入样例 daabaac 输出样例 5 这道题和51Nod 1088 最长回文子...

qq_28640193的博客 198

【王道训练营 C/C++方向基础 60 题(31-40)】

王道训练营 C/C++方向基础 60 题(31-40)

qq_55805517的博客 3067

Flink 运维监控与指标采集实战(Prometheus + Grafana 全流程)

Flink运维监控在实时计算场景中至关重要,因为Flink作业需要7×24小时稳定运行,对性能、资源、故障感知和状态变化的实时监控是保障系统稳定的关键。Flink自带的Metrics系统提供了基本的监控能力,但为了更全面的监控,Prometheus+Grafana成为最主流的解决方案。通过配置PrometheusReporter和Grafana仪表盘,可以实现对Flink作业的全面监控,包括CPU、内存、吞吐量、Checkpoint状态、KafkaSink性能等关键指标。此外,自定义指标采集和报警机制的配置

晴天彩虹雨的博客 1368

51Nod 1089 最长回文子串 V2 —— Manacher算法

题目链接:https://vjudge.net/problem/51Nod-1089 1089最长回文子串V2(Manacher算法) 基准时间限制:1秒 空间限制:131072KB 分值:0难度:基础题 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 ...

alince20008的博客 89

太阳敏感器:卫星姿态控制的“指南针

在卫星姿态控制系统中,太阳敏感器(Sun Sensor) 是至关重要的光学姿态敏感器之一。它通过探测太阳光的方向,为卫星提供关键的姿态参考信息,确保卫星能够正确调整自身方位,维持稳定的对日定向,保障能源供应和任务执行。

ScilogyHunter的博客 1731

51nod1089 最长回文子串 V2(Manacher算法/哈希)

回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 输入 输入Str(Str的长度 <= 100000) 输出 输出最长回文子串的长度L。 输入样例 daabaac 输出样例 5 知乎上 https://www.zhihu.com/question/37289584 ”c加加编程思想“ 答主的回答很棒。 思路:...

tomjobs的博客 602

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

本地AI环境存储清理:从垃圾堆积到高效运行

本地部署AI模型或跑推理任务时,磁盘空间与缓存管理是稳定运行的基础。模型下载、PyTorch编译、pip安装、Docker镜像及ComfyUI输出都会产生大量临时文件和残留缓存,导致存储膨胀、加载变慢。使用du/ncdu定位占用,清理Hugging Face模型缓存、CUDA内核缓存、pip/conda缓存和悬空容器卷,可释放数十GB空间。该方案覆盖Windows、Linux、macOS和Docker,适用于ComfyUI持续生成、TTS/OCR批量任务和API长时挂机场景。掌握清理原理与自动化脚本,能让本

weixin_34321753的博客 435

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

51nod 1089 最长回文子串 V2(Manacher算法)

题目链接 注意点: 1.读入字符串的时候,最好用getline读入一行,而非cin 2.由于使用manacher算法,字符串长度会被扩充一倍,所以长度最好是题目给定长度的两倍 3.注意更新半径中心 #include<iostream> #include<algorithm> #include<string> using namespace std; const ...

姚军 160

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

51nod1089最长回文子串 V2(Manacher算法)

题目就是求字符串中最长回文串的长度。 一道马拉车板子题,就附带讲讲我对马拉车算法的理解。 马拉车算法时间复杂度是O(n)的,它巧妙地把将长度为奇数的回文串和长度为偶数的回文串一起考虑。它在字符与字符之间加了一个没有出现过的字符(一般都是'#')。 主要有一个len[i]数组求 以p[i]字符为回文串中心时,最大回文串中最右字符到p[i]有几个字符(包括s[i])。 比如样例...

agyohust791263的博客 148

51Nod 1089 最长回文子串 V2(Manacher算法)

回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 Output 输出最长回文子串的长度L。 Input示例 daabaac Output示例 5 题意:。。。。 思路:这回的字符串长度变大,所以肯定不能用暴力了,在此就需要用

gtuif的博客 467

51Nod1089最长回文子串 V2(Manacher算法)

俗称马拉车算法→_→ 处理最长回文字串复杂度O(n) 这里菜鸡不会证,简单说一下思路。 由于回文串有奇有偶,所以将串之间和两边加上'#',为了防止后面某个地方超边界,新串0位置加上$。这样每个回文子串为#a#b#a#形式,必定奇数个,且原子串长度为新字串半径减一,求这个半径p[i]。(即p[i]是以i为中心的最长回文字串的半径) i从1到n,过程中维护一个id点(i...

weixin_33921089的博客 165

51nod1089 最长回文子串 V2(Manacher算法)

拉马车算法:传送(这里有详细解释); 1089 最长回文子串 V2(Manacher算法) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 &lt;= 100000...

WINDZLY的博客 354

51nod-【1089 最长回文子串 V2(Manacher算法)】

1089 最长回文子串 V2(Manacher算法) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 

有梦的博客 661
上一篇: 51Nod-1057 N的阶乘
下一篇: 51Nod-1058 N的阶乘的长度
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值