当前位置: 首页 > news >正文

建筑案例分析网站自建网站平台有哪些

建筑案例分析网站,自建网站平台有哪些,武胜县赛马镇建设学校网站,做营销型网站需要注意哪些点【LetMeFly】1745.分割回文串 IV:动态规划(用III或II能直接秒) 力扣题目链接:https://leetcode.cn/problems/palindrome-partitioning-iv/ 给你一个字符串 s ,如果可以将它分割成三个 非空 回文子字符串,…

【LetMeFly】1745.分割回文串 IV:动态规划(用III或II能直接秒)

力扣题目链接:https://leetcode.cn/problems/palindrome-partitioning-iv/

给你一个字符串 s ,如果可以将它分割成三个 非空 回文子字符串,那么返回 true ,否则返回 false 。

当一个字符串正着读和反着读是一模一样的,就称其为 回文字符串

 

示例 1:

输入:s = "abcbdd"
输出:true
解释:"abcbdd" = "a" + "bcb" + "dd",三个子字符串都是回文的。

示例 2:

输入:s = "bcbddxy"
输出:false
解释:s 没办法被分割成 3 个回文子字符串。

 

提示:

  • 3 <= s.length <= 2000
  • s​​​​​​ 只包含小写英文字母。

解题方法:动态规划

如果想用之前的方法直接AC:

  • 1278.分割回文串 III:令k = 3,复杂度 O ( n 2 k ) O(n^2k) O(n2k)
  • 132.分割回文串 II:也就是今天的方法。

132.分割回文串 II中我们通过预处理可以在 O ( n 2 ) O(n^2) O(n2)时间复杂度内得到字符串s的任一字串是否为回文串(方法简述如下:)

使用isok[i][j]表示字符串s从下标i到下标j的子串是否为回文串。若 i ≥ j i\geq j ij则视为回文串,否则有状态转移方程 i s o k [ i ] [ j ] = s [ i ] = = s [ j ] AND  i s o k [ i + 1 ] [ j − 1 ] isok[i][j] = s[i] == s[j]\text{ AND } isok[i + 1][j - 1] isok[i][j]=s[i]==s[j] AND isok[i+1][j1]

都知道任意一个字串是否是回文串了,我直接枚举两个分割位置,每次使用 O ( 1 ) O(1) O(1)时间看看被分成的三段是否都为回文字符串不就可以了么?

  • 时间复杂度 O ( n 2 ) O(n^2) O(n2),其中 n = l e n ( s ) n=len(s) n=len(s)
  • 空间复杂度 O ( n 2 ) O(n^2) O(n2)

AC代码

C++
/** @Author: LetMeFly* @Date: 2025-03-04 10:18:19* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-03-04 10:28:38*/
class Solution {
public:bool checkPartitioning(string s) {int n = s.size();vector<vector<bool>> isok(n, vector<bool>(n, true));for (int i = n - 1; i >= 0; i--) {for (int j = i + 1; j < n; j++) {isok[i][j] = s[i] == s[j] && isok[i + 1][j - 1];}}for (int i = 0; i < n; i++) {for (int j = i + 1; j < n - 1; j++) {if (isok[0][i] && isok[i + 1][j] && isok[j + 1][n - 1]) {return true;}}}return false;}
};
Python
'''
Author: LetMeFly
Date: 2025-03-04 10:30:23
LastEditors: LetMeFly.xyz
LastEditTime: 2025-03-04 10:33:30
'''
class Solution:def checkPartitioning(self, s: str) -> bool:n = len(s)isok = [[True] * n for _ in range(n)]for i in range(n - 1, -1, -1):for j in range(i + 1, n):isok[i][j] = s[i] == s[j] and isok[i + 1][j - 1]for i in range(n):for j in range(i + 1, n - 1):if isok[0][i] and isok[i + 1][j] and isok[j + 1][n - 1]:return Truereturn False
Go
/** @Author: LetMeFly* @Date: 2025-03-04 10:42:05* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-03-04 10:46:32*/
package mainfunc checkPartitioning(s string) bool {n := len(s)isok := make([][]bool, n)for i, _ := range isok {isok[i] = make([]bool, n)for j, _ := range isok[i] {isok[i][j] = true}}for i := n - 1; i >= 0; i-- {for j := i + 1; j < n; j++ {isok[i][j] = s[i] == s[j] && isok[i + 1][j - 1]}}for i := 0; i < n; i++ {for j := i + 1; j < n - 1; j++ {if isok[0][i] && isok[i + 1][j] && isok[j + 1][n - 1] {return true}}}return false
}
Java
/** @Author: LetMeFly* @Date: 2025-03-04 10:47:02* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-03-04 10:49:14*/
class Solution {public boolean checkPartitioning(String s) {int n = s.length();boolean[][] isok = new boolean[n][n];for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {isok[i][j] = true;}}for (int i = n - 1; i >= 0; i--) {for (int j = i + 1; j < n; j++) {isok[i][j] = s.charAt(i) == s.charAt(j) && isok[i + 1][j - 1];}}for (int i = 0; i < n; i++) {for (int j = i + 1; j < n - 1; j++) {if (isok[0][i] && isok[i + 1][j] && isok[j + 1][n - 1]) {return true;}}}return false;}
}

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

千篇源码题解已开源

http://www.yidumall.com/news/106940.html

相关文章:

  • 做网站需要什么 图片视频全域seo
  • 房产门户网站平台搭建广东深圳疫情最新
  • 微信电影网站建设教程怎么做私人网站
  • 自己做免费的网站吗关键词优化排名网站
  • 网站宣传单网络营销推广的方法有哪些
  • 查看网站建设工作门户网站建站系统
  • 重庆cms建站模板搜索引擎优化的分类
  • 白银做网站的董事自己建网站怎么建
  • 织梦教育培训网站源码网络营销到底是干嘛的
  • 宁波企业网站建设seo关键字排名优化
  • 自己做企业网站用哪个软件优化方案官网
  • 微网站自己可以做么优化设计四年级上册数学答案
  • 深圳电子商城网站建设外贸网络推广营销
  • wordpress网站如何清理js宁波seo关键词如何优化
  • 个人如何做微商城网站设计seo营销策略
  • php企业网站无限制源码南京网站设计
  • 网络营销网站策划口碑最好的it培训机构
  • 野花香社区在线观看播放seo导航
  • 网站修改备案号个人网站模板
  • 威海网站开发制作广东网站优化公司
  • 太原注册公司在哪个网站申请16种营销模型
  • 注册免费的网站seo包括哪些方面
  • 做网站的作文国际最新新闻热点事件
  • 西宁做网站的公司百度关键词推广怎么做
  • wordpress抓取文章插件杭州优化建筑设计
  • 部门子网站建设方案seo工作内容和薪资
  • 做试客需要去哪些网站山东网站seo推广优化价格
  • 哈尔滨网站建设教程百度企业网盘
  • 济南模板网站制作交友网站有哪些
  • 国内flex做的网站全国培训机构排名前十