随笔分类 -  算法-动态规划 / dp子序列问题

摘要:https://leetcode.cn/problems/count-beautiful-splits-in-an-array/description/ 给你一个整数数组\(nums\)。 如果数组\(nums\)的一个分割满足以下条件,我们称它是一个 美丽 分割: 数组\(nums\)分为三段非空 阅读全文
posted @ 2024-12-21 20:36 lipu123 编辑
摘要:https://www.luogu.com.cn/problem/P2758 https://leetcode.cn/problems/edit-distance/description/ 设 \(A\) 和 \(B\) 是两个字符串。我们要用最少的字符操作次数,将字符串 \(A\) 转换为字符串 阅读全文
posted @ 2024-06-24 16:57 lipu123 编辑
摘要:希腊有一个著名的历史学家,他为了专心写一本史学巨著,而把自己关在一个高塔之上。有一天,他目睹了一场凶杀案的发生,但事后,他惊讶地发现所有围观人的证词都不一样,甚至有的完全相反。于是,他放弃了继续写作的念头。他说:“人们连发生在眼前的事实都分辨不清,我又怎么知道我写的历史是真是假呢?” 虽然历史的真假 阅读全文
posted @ 2021-07-03 11:37 lipu123 阅读(69) 评论(0) 推荐(1) 编辑
摘要:#include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #define N 100005 using namespace std; int num[N]; int a[N]; int pre[N]; int 阅读全文
posted @ 2020-11-14 23:02 lipu123 阅读(139) 评论(0) 推荐(0) 编辑
摘要:动态规划,借助矩阵可以直观的看到计算过程。 定义二维数组dp, dp[ i ][ j ],表示前 j 项所构成 i 子段的最大和,且必须包含着第j项,即以第j项结尾 然后是一个递推过程。 求dp[ i ][ j ],有两种情况 1、dp[ i ][ j ] = dp[ i ] [ j-1 ] + a 阅读全文
posted @ 2020-09-30 21:45 lipu123 阅读(223) 评论(0) 推荐(0) 编辑
摘要:问题 I: Tired Terry 时间限制: 1 Sec 内存限制: 128 MB提交 状态 题目描述 Terry is feeling tired and he suspects it is because of a lack of sleep. He created a device that 阅读全文
posted @ 2020-09-12 20:25 lipu123 阅读(201) 评论(0) 推荐(0) 编辑