HihoCoder 1323 回文字符串

回文字符串

思路

动态规划:

可以有三种修改决策

  • 将开头和结尾字符改成一样
  • 在开头加一个和末尾相同的字符
  • 在末尾加一个和开头形同的字符

代码:

#include <stdio.h>
#include <iostream>
#include <string.h>
using namespace std;
char s[105];
int dp[105][105];
int main()
{scanf("%s", s);int n = strlen(s);for(int len = 2; len <= n; len++){for(int i = 0; i + len - 1 < n; i++){int j = i + len - 1;if(s[i] == s[j])dp[i][j] = dp[i+1][j-1];elsedp[i][j] = dp[i+1][j-1] + 1;dp[i][j] = min(dp[i][j], dp[i+1][j] + 1);dp[i][j] = min(dp[i][j], dp[i][j-1] + 1);}}printf("%d\n", dp[0][n-1]);return 0;
}

转载于:https://www.cnblogs.com/Alruddy/p/7392586.html

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

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

相关文章

python线程状态_Python线程

1. 线程基础1.1. 线程状态线程有5种状态&#xff0c;状态转换的过程如下图所示&#xff1a;1.2. 线程同步(锁)多线程的优势在于可以同时运行多个任务(至少感觉起来是这样)。但是当线程需要共享数据时&#xff0c;可能存在数据不同步的问题。考虑这样一种情况&#xff1a;一个列…

JavaScript中错误正确处理方式,你用对了吗?

JavaScript的事件驱动范式增添了丰富的语言&#xff0c;也是让使用JavaScript编程变得更加多样化。如果将浏览器设想为JavaScript的事件驱动工具&#xff0c;那么当错误发生时&#xff0c;某个事件就会被抛出。理论上可以认为这些发生的错误只是JavaScript中的简单事件。 本文将…

文件分割机

文件分割与合并 要求&#xff1a;实现对大文件的分割与合并。 按指定个数切&#xff08;如把一个文件切成10份&#xff09;或按指定大小切&#xff08;如每份最大不超过10M&#xff09;&#xff0c;这两种方式都能够。 程序说明&#xff1a; 文件分割&#xff1a;把一个文件分割…

mysql pow函数怎么用_pow函数怎么用

PHP pow函数表示指数表达式。pow函数怎么用&#xff1f;php pow()函数 语法作用&#xff1a;pow()函数的作用是将一个数进行n次方计算后返回语法&#xff1a;pow(X,Y);参数&#xff1a;X表示要做处理的数字Y表示指定n次方中的n数值说明&#xff1a;返回X的Y次方幂&#xff0c;如…

【IntelliJ IDEA】添加一个新的tomcat,tomcat启动无法访问欢迎页面,空白页,404

第一部分&#xff0c;添加一个tomcat 1.先把Toolbar 和 Tool Buttons显示出来 2.选择Edit Configurations 3.添加一个新的tomcat server进来 解决no artifacts configured问题&#xff0c;就是没有项目加入里面 先添加一个没有的项目 启动之后找不到 页面 第二部分&#xff0c…

回文数-时间变换-判断邮箱

class huiwenshu public class huiwenshu {public static void main(String[] args) {System.out.println("输入...");Scanner in new Scanner(System.in);String number in.next();boolean flag true;for(int i0;i<number.trim().length()/2;i){if(!String.va…

mac eclipse tomcat mysql_mac下使用eclipse+tomcat+mysql开发 j2ee(一)

在这里是使用eclipse&#xff0b;tomcat&#xff0b;mysql的方式。1、软件下载(1) eclipse我使用的是mac&#xff0c;因为本人是苹果客户端开发者&#xff0c;所以目前只有苹果机器了。首先下载eclipse for mac&#xff0c;选择mac 64位&#xff0c;下载eclipse-jee-kepler-SR1…

社交系统ThinkSNS-plus(TS+)V1.0发布!

2019独角兽企业重金招聘Python工程师标准>>> 需要购买源码的同志们&#xff0c;依然随时可以联系我们手机&#xff1a;18108035545&#xff08;同微信&#xff09;&#xff1b;电话&#xff1a;028-82884828 &#xff1b;QQ&#xff1a;3298713109&#xff1b; 从决…

《软件架构设计》一书目录

第一部分 软件架构概念与思想篇 1 第1章 解析软件架构概念 3 1.1 软件架构概念的分类 3 1.1.1 组成派 4 1.1.2 决策派 5 1.2 软件架构概念大观 5 1.2.1 Booch、Rumbaugh和Jacobson的定义 5 1.2.2 Woods的观点 6 1.2.3 Garlan和Shaw的定义 6 1.2.4 Perry和Wolf的定义 …

.net 读取mysql数据库配置文件_.NETCore添加及读取默认配置文件信息

这里的默认配置文件指的是项目中的appsettings.json文件&#xff0c;我们可以把一些配置信息保存在里面&#xff0c;比如数据库连接信息。来吧&#xff0c;看例子&#xff1a;1、先在appsettings.json文件中写入数据库的连接信息&#xff1a;{"Logging": {"LogL…

年龄层统计SQL

-- 处理名单丢失SELECT u.user_id u_userid,o.user_id o_userid,o.* FROMtb_gh_orders o LEFT JOIN tb_gh_user u ON o.user_id u.user_id WHERE o.course_id 128 AND o.order_state 1 ;-- 年龄段统计SELECT T1.*,CONCAT(LEFT (T1.C1 / T2.C2 * 100, 5), %) P FROM(SELECT C…

h5 img js 点击图片放大_H5实现移动端图片预览:手势缩放, 手势拖动,双击放大......

查看示例效果&#xff1a;一、功能介绍图片预览主要有以下几个功能点组成&#xff1a;监听图片点击事件&#xff0c;进入图片预览模式自定义手势事件, (双指缩放&#xff0c;滑动&#xff0c;双击。。。)监听图片手势事件&#xff0c;通过 transform-matrix 实现图片的各种变换…

[转载]建立团队沟通协作工作方式

很多初创团队、以及刚开始尝试敏捷的团队&#xff0c;没有工作协议的概念&#xff0c;热热闹闹&#xff0c;混混乱乱。本文介绍了关于工作协议的What, Why, Who, When, 以及How。 What:什么是工作协议 工作协议&#xff1a;由团队共同商议&#xff0c;达成一致遵守的一组规则、…

私有云促进企业管理变革 助力企业快步前行

在全球经济迅速发展和科学技术突飞猛进的情况下, 无论是制造型企业还是服务型行业&#xff0c;企业数量都在迅速增加,产品和服务质量也日趋完善。这必然导致一个结果——企业间的竞争更加激烈、产品的同质化现象日益明显。在这样的大背景之下, 再伴随着现代管理和营销理论的不断…

linux安装自带mysql吗_Linux下安装mysql

前提下必须要有这三个文件夹A.jpgB.jpg还要安装这两个软件&#xff1b;直接百度官网即可&#xff1b;先通过Xftp6这个软件&#xff0c;编译文件夹&#xff0c;C.jpg搭建mysql1.查看CentOS自带的mysqlrpm -qa | grep mysql2.卸载CentOS自带的mysqlrpm -e --nodeps 要卸载的软件3…

Android深入源代码分析理解Aidl总体调用流程(雷惊风)

2017年開始上班的第一天。老不想工作了&#xff0c;假期感觉还没開始就已经结束了&#xff0c;唉&#xff0c;时间就是这样&#xff0c;新的一年開始了&#xff0c;尽管非常不想干正事&#xff0c;没办法&#xff0c;必须干起来。由于后边的路还非常长&#xff0c;距离六十岁还…

(转载)UI接口分层自动化测试框架设计思想

阅读本小节&#xff0c;需要读者具备如下前提条件&#xff1a; 1. 掌握一种编程语言基础&#xff0c;如java、python等。 2. 掌握一种单元测试框架&#xff0c;如java语言的testng框架、python的unittest框架。 3. 掌握目前主流的UI测试框架&#xff0c;移动端APP测试框架Ap…

如何提高阅读源代码的效率 .

如何提高阅读源代码的效率 记得在开源流行之前&#xff0c;我看过的代码紧限于所参与的项目&#xff0c;能有个几万行就不错哩。后来很多优秀开源项目都相继蹦出来了&#xff0c;阅读的代码量那叫一个大呀&#xff01;不得不看。我现在掉到android这个大坑里&#xff0c;每天都…

170821-关于SpringMVC的知识点

1.SpringMVC 概述以及优势 SpringMVC和Spring的关系&#xff1a; 软件开发的三层架构&#xff1a; web层【表示层、表现层】---->Service层---->Dao[DataBase Access Object]---->数据库&#xff01; SpringMVC实际上是Spring的一个子模块&#xff0c;我们用Spring…

pojo类中list存储其他字段_List集合流处理类型小结

本文为博主原创&#xff0c;未经允许不得转载对应实体类importlombok.Getter;importlombok.Setter;GetterSetterpublic classStudent {privateString name;private intage;privateString className;privateString birthday;}1.根据字段取出某一个字段属性的集合List studentLis…