【算法手记9】OR26 最长回文子串 NC369 [NOIP2002 普及组] 过河卒

🦄个人主页:修修修也

🎏所属专栏:刷题

⚙️操作环境:牛客网


一.OR26 最长回文子串

牛客网题目链接(点击即可跳转):OR26 最长回文子串

题目详情:

本题详情如下图:


题目思路:

本题解题思路如下:

        本题思路用中心扩展算法,遍历所有字符,将每个字符作为回文串的中心向外扩展,记录下每次拓展的最长的回文串的长度,最后返回最长的回文串长度即可.但是要考虑回文串的长度是奇数还是偶数,如下图所示:


解题代码:

本题解题代码如下:

class Solution 
{
public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param A string字符串 * @return int整型*/int getLongestPalindrome(string A) {// 中心拓展算法int max_len=0;for(int i=0;i<A.size();i++){int left,right;for(int j=0;j<2;j++){left=i-1+j;right=i+1;while(left>=0 && right<A.size() && A[left]==A[right]){left--;right++;}max_len = max(right-left-1,max_len);}}return max_len;}
};

二.NC369 [NOIP2002 普及组] 过河卒

牛客网题目链接(点击即可跳转):NC369 [NOIP2002 普及组] 过河卒

题目详情:

本题详情如下图:


题目思路:

本题解题思路如下:

        常规二维dp填表可解,状态转换方程为dp[n][m]=dp[n-1][m]+dp[n][m-1];

        填表注意下面四种填表特殊情况:如果是马的控制点,那么dp[i][j]=0,如果是首行,那么dp[i][j]=dp[i][j-1],如果是首列,那么dp[i][j]=dp[i-1][j],如果是dp[0][0]则值填1.

        特别注意题目给的马的跳跃点方程后面的条件,也是一定要写入判断中的,不能忘了!否则会多错误计算马的跳跃点.


解题代码:

本题解题代码如下

class Solution 
{
public:int crossRiver(int n, int m, int x, int y) {//求dp方程:dp(n,m)=dp(n-1,m)+dp(n,m-1);//填dp表long long dp[20][20]={0};//x+=1;//y+=1;for(int i=0;i<=n;i++){for(int j=0;j<=m;j++){if((i!=x&&j!=y&&(abs(i-x)+abs(j-y))==3) || (i==x&&j==y)){dp[i][j]=0;}else if(i==0 && j==0){dp[i][j]=1;}else if(i==0){dp[i][j]=dp[i][j-1];}else if(j==0){dp[i][j]=dp[i-1][j];}else {dp[i][j]=dp[i][j-1]+dp[i-1][j];}}}return dp[n][m];}
};

结语

        说点啥好呢...一切都在慢慢向好发展, 坚持下去, 也就最后一两个月时间就可以得到结果了,加油!

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

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

相关文章

批量删除或替换文本文件中指定的行,如删除第一行、删除最后一行

每一个文本文件中我们都可以插入非常多的行&#xff0c;我们可以对行的内容进行删除、修改等各种操作。如果文本文件中的某些行的内容需要更新&#xff0c;那我们就需要对其进行修改操作。想要修改文本文件的内容其实是非常方便的&#xff0c;但是如果想要批量的对多个文本文件…

LLM架构解析:词嵌入模型 Word Embeddings(第二部分)—— 从基础原理到实践应用的深度探索

本专栏深入探究从循环神经网络&#xff08;RNN&#xff09;到Transformer等自然语言处理&#xff08;NLP&#xff09;模型的架构&#xff0c;以及基于这些模型构建的应用程序。 本系列文章内容&#xff1a; NLP自然语言处理基础词嵌入&#xff08;Word Embeddings&#xff09…

机构数据服务

一、背景说明 券商/基金/银行等金融机构的数据中心&#xff0c;基本都外购有数十家各类数据&#xff0c;自有业务每天也在产生海量信息。如何有效管理和使用这些数据&#xff0c;通过数据服务&#xff0c;沉淀数据资产&#xff0c;机构研发和运维部门也在不断尝试和改进。 传…

中和农信:让金融“活水”精准浇灌乡村沃土

2025年政府工作报告首提“投资于人”概念&#xff0c;并22次提及“金融”&#xff0c;强调要着力抓好“三农”工作&#xff0c;深入推进乡村全面振兴&#xff1b;一体推进地方中小金融机构风险处置和转型发展&#xff1b;扎扎实实落实促进民营经济发展的政策措施&#xff0c;切…

JavaScript重难点突破:期约与异步函数

同步和异步 ​同步&#xff08;Synchronous&#xff09;​ ​定义&#xff1a;任务按顺序依次执行&#xff0c;前一个任务完成前&#xff0c;后续任务必须等待。 ​特点&#xff1a;阻塞性执行&#xff0c;程序逻辑直观&#xff0c;但效率较低 ​异步&#xff08;Asynchron…

学习总结 网格划分+瞬态求解设置

网格划分部分 1.导入几何文件 导入我们的几何模型&#xff0c;他的格式为.scdocx 2.添加局部尺寸BOI 因为要对对前缘和尾缘进行局部加密&#xff0c;所以进行一个BOI的局部加密&#xff0c;目标尺寸取的几何尺寸的最小尺寸的0.1&#xff0c;就是0.4mm。 3.生成表面网格 表面…

.NET 使用 WMQ 连接Queue 发送 message 实例

1. 首先得下载客户端&#xff0c;没有客户端无法发送message. 安装好之后长这样 我装的是7.5 安装目录如下 tools/dotnet 目录中有演示的demo 2. .Net 连接MQ必须引用bin目录中的 amqmdnet.dll 因为他是创建Queuemanager 的核心库&#xff0c; 项目中引用using IBM.WMQ; 才…

风电行业预测性维护解决方案:给风机装上 “智能医生”,实现故障 “秒级预警”

引言&#xff1a;风电设备故障为何成为 “运维黑洞”&#xff1f; 某海上风电场因齿轮箱轴承故障停机 3 天&#xff0c;直接损失 50 万元发电量。传统维护模式下&#xff0c;人工巡检覆盖率不足 40%&#xff0c;故障修复平均耗时 72 小时。而预测性维护通过物联网 AI 技术&am…

5、无线通信基站的FPGA实现架构

基站&#xff08;Base Station&#xff0c;BS&#xff09;&#xff0c;也称为公用移动通信基站&#xff0c;是无线电台站的一种形式&#xff0c;具体则指在一定的无线电覆盖区中&#xff0c;通过移动通信交换中心&#xff0c;与移动电话终端之间的信息传递的无线电收发信电台。…

笔记2——网络参考模型

一、OSI参考模型&#xff1a; 应用层&#xff1a; 报文 给应用程序提供接口 表示层&#xff1a; 进行数据格式的转换 会话层&#xff1a; 在通讯双方之间建立、管理和终止会话 传输层&#xff1a; 数据段&#xff1b;建立、维护、取消一次端到端的数据传输过程&#xff1b;控制…

最短路径:Bellman-Ford算法

Bellman-Ford的操作步骤 1.初始化距离&#xff1a;将起点的dist值设置为0&#xff0c;其他点的dist值设置为无穷大。 2.执行n-1轮松弛操作&#xff1a;遍历所有边&#xff0c;更新最短距离&#xff0c;收敛后可获得最短路径。 3.检测负权环&#xff1a;额外遍历一次&#xf…

0402-对象和类(访问器 更改器 日期类)

OOP&#xff1a;面向对象程序设计 类&#xff1a;构造对象的模板或蓝图 类构造对象的过程称为创建类的实例 封装&#xff1a;对外隐藏数据的真实实现方式&#xff0c;提供简单的方法 &#xff08;类比方向盘&#xff09; 对象&#xff1a;本质上是内存中的一小块空间 识别类&a…

【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的文件上传与下载:实现文件管理功能

<前文回顾> 点击此处查看 合集 https://blog.csdn.net/foyodesigner/category_12907601.html?fromshareblogcolumn&sharetypeblogcolumn&sharerId12907601&sharereferPC&sharesourceFoyoDesigner&sharefromfrom_link <今日更新> 一、开篇整…

搜索算法------DFS练习2

1. 题目 2. 思路和题解 从题目中可以看出&#xff0c;如果一个格子上有雨水&#xff0c;那么就可以流到周围比他高度低的单元格&#xff0c;如果单元格和海洋相邻&#xff0c;那么雨水也会流入海洋。总而言之一句话就是水从高处流向低处。从这里的流向可以联想到深度优先搜索这…

[python] 正则表达式

1.分割str s"1-2--3---4" are.findall(r\d|[-],s) # 输出&#xff1a;[1, -, 2, --, 3, ---, 4]s"-4(2(3)" # ? 表示 - 可以出现0次或1次 # \d 表示匹配一个或多个连续数字 # \D 表示匹配非数字字符 sre.findall(r-?\d|\D,s) # 输出&#xff1a;[-4, (,…

定制化管理系统与通用管理系统,谁更胜一筹?

一、定制化管理系统与通用管理系统的定义与特点 定制化管理系统 定制化管理系统是根据企业的具体业务需求和流程进行个性化开发的软件系统。它能够深度贴合企业的管理需求&#xff0c;提供高度灵活的解决方案。其特点包括&#xff1a; 高度适应性&#xff1a;能够精准匹配企业…

gitee 配置git上传

Git入门&#xff1f;查看 帮助 , Visual Studio / TortoiseGit / Eclipse / Xcode 下如何连接本站, 如何导入仓库 简易的命令行入门教程: Git 全局设置: 以 176fuguM2项目为例 git config --global user.name "堕落圣甲虫" git config --global user.email "11…

SpringBoot+Vue 中 WebSocket 的使用

WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议&#xff0c;它使得客户端和服务器之间可以进行实时数据传输&#xff0c;打破了传统 HTTP 协议请求 - 响应模式的限制。 下面我会展示在 SpringBoot Vue 中&#xff0c;使用WebSocket进行前后端通信。 后端 1、引入 j…

STM32 FATFS - 在SDIO的SD卡中运行fatfs

参考文章 STM32CubeMX | SD Card FATFS - 知乎 [STM32F4]基于F407的硬件移植Free RTOSFATFS&#xff08;SDIO&#xff09;_freertosfatfs-CSDN博客 例程地址&#xff1a;STM32FatFS: 基于stm32的fatfs例程&#xff0c;配合博客文章 基于梁山派天空星开发板&#xff0c;STM3…

Java 进化之路:从 Java 8 到 Java 21 的重要新特性

Java 进化之路&#xff1a;从 Java 8 到 Java 21 的重要新特性 开篇介绍 在软件开发领域&#xff0c;Java 作为一门历史悠久且广泛应用的编程语言&#xff0c;始终保持着其核心竞争力和持续创新能力。自 Java 8 发布以来&#xff0c;Java 经历了一系列重要版本更新&#xff0…