腾讯2017

给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢?
输出需要删除的字符个数。

输入描述:

输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.

输出描述:

对于每组数据,输出一个整数,代表最少需要删除的字符个数。

输入例子1:

abcda
google
输出例子1:
2
2

这个问题等价于最长回文子序

#include <iostream>
#include <vector>
#include <string>
#include <algorithm>using namespace std;int longestPalindromeSubseq(string &s) {int n = s.size();// dp[i][j] 表示下标从i到j的最长回文子序列的长度,下标从0开始vector<vector<int>> dp(n, vector<int>(n, 0));for (int i = 0; i < n; i++)dp[i][i] = 1;for (int i = 1; i < n; i++) {for (int j = 0; j < n - i; j++) {if (s[j] == s[j + i])dp[j][j + i] = dp[j + 1][j + i - 1] + 2;elsedp[j][j + i] = max(dp[j + 1][j + i], dp[j][j + i - 1]);}}return dp[0][n - 1];
}int main()
{string str;cin >> str;cout << longestPalindromeSubseq(str) << endl;
}

快手这道题目就是最长回文子序列

最大回文子串是被研究得比较多的一个经典问题。最近月神想到了一个变种,对于一个字符串,如果不要求子串连续,那么一个字符串的最大回文子串的最大长度是多少呢。

输入描述:

每个测试用例输入一行字符串(由数字0-9,字母a-z、A-Z构成),字条串长度大于0且不大于1000.

输出描述:

输出该字符串的最长回文子串的长度。(不要求输出最长回文串,并且子串不要求连续)

示例1

输入

adbca

输出

3

说明

因为在本题中,不要求回文子串连续,故最长回文子串为aba(或ada、aca)

快手腾讯校招笔试题最长回文子序相关推荐

  1. LeetCode 1771. 由子序列构造的最长回文串的长度(最长回文子序)

    文章目录 1. 题目 2. 解题 1. 题目 给你两个字符串 word1 和 word2 ,请你按下述方法构造一个字符串: 从 word1 中选出某个 非空 子序列 subsequence1 . 从 ...

  2. Java字符串中最长回文子字符串

    Longest palindrome substring in a string is a very common java interview question. To find out the l ...

  3. manecher算法 最长回文子字符串

    还没放假的时候就知道有这么一种算法,之前看了一下以为很难就没好好学,今天早上用心看了一下,发现其实很简单.学什么东西都应该静下心来好好理解好好学,才能保证高效率! 我主要是看这篇博客学的马拉车,我觉得 ...

  4. 腾讯校招笔试题之纸牌游戏

    题目 牛牛和羊羊正在玩一个纸牌游戏.这个游戏一共有n张纸牌, 第i张纸牌上写着数字ai. 牛牛和羊羊轮流抽牌, 牛牛先抽, 每次抽牌他们可以从纸牌堆中任意选择一张抽出, 直到纸牌被抽完. 他们的得分等 ...

  5. 最长回文子序列(LPS)

    问题描述: 回文是正序与逆序相同的非空字符串,例如"civic"."racecar"都是回文串.任意单个字符的回文是其本身. 求最长回文子序列要求在给定的字符串 ...

  6. LeetCode 516. 最长回文子序列(动态规划)

    1. 题目 给定一个字符串s,找到其中最长的回文子序列.可以假设s的最大长度为1000. 示例 1: 输入: "bbbab" 输出: 4 一个可能的最长回文子序列为 "b ...

  7. Leetcode 516.最长回文子序列

    Time: 20190906 Type: Medium 题目描述 给定一个字符串s,找到其中最长的回文子序列.可以假设s的最大长度为1000. 示例 1: 输入: "bbbab" ...

  8. 【1错笔记】psd面试——最长回文子序列 动态规划(2000字超详细解题)

    题目: 链接:https://ac.nowcoder.com/acm/contest/90/D 来源:牛客网 题目描述 掌握未来命运的女神 psd 师兄在拿了朝田诗乃的 buff 后决定去实习. 埃森 ...

  9. 算法62---最长回文子序列长度(子串)、回文子序列总共个数(子串)【动态规划】...

    参考链接:https://www.cnblogs.com/AndyJee/p/4465696.html 一.题目:最长回文子序列长度 给定字符串,求它的最长回文子序列长度.回文子序列反转字符顺序后仍然 ...

最新文章

  1. SAP UI5 应用开发教程之四十七 - 如何自定义 SAP UI5 字符串类型输入字段的校验逻辑试读版
  2. android ota更新app,企业 OTA 更新  |  Android 开源项目  |  Android Open Source Project
  3. 浏览器打不开python的页面_robotframework,selenium启动不了打不开浏览器的问题访问不了网页...
  4. go interface类型转换_Go语言的九大核心特性主要有哪些?
  5. window.event对象详尽解析
  6. 蚂蚁金服:开源增强版 SpringBoot 的研发框架!
  7. Pycharm解决plotly不显示离线网页的问题
  8. php版的求表达式的真值表-TrueValueTable
  9. USB协议详解第1讲(核心概念通俗理解)
  10. weight_decay一般设置为多少_建盏一般多少钱?建阳建盏定价的依据是什么?宋韵建盏为你解析...
  11. linux shell 10进制转16进制
  12. 使用httpClient4.4登录豆瓣,并发表说说
  13. Android Binder学习指南
  14. 一些开源库,提高开发效率
  15. Win10 应用商店打不开,错误代码0x80131500——亲测可用
  16. 虚拟机VM中如何安装图形化界面?
  17. 浅谈Python Web
  18. 1.致远OA二次开发G6 A6 A8 本机软件安装
  19. 领导给我一堆无序、杂乱的数据,我写了一个Python自动化脚本!
  20. 练习-在上次关闭位置启动窗口

热门文章

  1. View 事件分发规律总结(超详细)
  2. 访问到下单转化率mysql代码_咨询转化率是咨询顾客下单数占
  3. Mysql数据库——DQL数据查询语言
  4. Java实现使用Modbus4j+seroUtils读取Mudbus RTU/ASCII Over TCP/IP连接设备数据
  5. 所有的Python “爬虫“ 初学者,都应该看这篇文章!
  6. 学习自旋电子学的笔记01:微磁模拟软件OOMMF的教程(中文版)16章
  7. 上海人工智能产业生态圈逐渐形成,产业发展进入“快车道”
  8. linux隧道6rd配置
  9. 【技能储备】关于自学FreeMarker导出word的那些事
  10. 计蒜客 - T1029 计算2的幂