C语言积累一点点






















778. 水位上升的泳池中游泳
https://leetcode-cn.com/problems/swim-in-rising-water/

839. 相似字符串组
https://leetcode-cn.com/problems/similar-string-groups/

312.戳气球
https://leetcode-cn.com/problems/burst-balloons/
说明:
你可以假设 nums[-1] = nums[n] = 1,但注意它们不是真实存在的所以并不能被戳破。
0 ≤ n ≤ 500, 0 ≤ nums[i] ≤ 100
1 /*区间dp是分治思想的一个应用
2 大区间的解可以由小区间的解合并而成 故先将大区间分解成小区间 最后再将小区间的解合并得到大区间的解
3 体现了分而治之再归并的分治法思想
4 故区间dp所要做的就是:
5 1.如何划分
6 2.在何处划分
7 在何处划分只需要枚举区间中的一个分割点即可 最关键的是确立“如何划分”这个问题
8 既然区间dp用到了分治法的思想 则可以用分治法来思考问题
9 分治法分解子问题的一个重要特点就是子问题彼此独立 互不干扰
10 所以在“如何划分”这个问题上也应该遵守划分的子区间之间彼此独立 互不干扰
11 现在有一区间[i,j]在区间中选取一点k 将区间拆分为[i,k-1],[k+1,j]
12 如果戳爆第k个气球 毫无疑问 两个区间将会产生交集 k-1与k+1将会直接相邻 子问题无法做到彼此独立 互不干扰
13 但现在换一种思路:
14 先分别求出区间[i,k-1]与区间[k+1,j]的解 再戳爆第k个气球 这样两个区间就不会产生交集 两个区间的求解过程彼此独立 互不干扰
15 每求完一段区间的解 该区间的气球数都会变成零
16 故当求解完两端区间的解时 只剩下了三个气球 i-1 k j+1 故此时再戳爆第k个气球
17 得到 nums[i-1]xnums[k]xnums[j+1]
18 故状态转移方程为dp[i][j]=max(dp[i][j],dp[i][k-1]+dp[k+1][j]+nums[i-1]xnums[k]xnums[j+1]);
19 注意边界条件 不要让数组越界*/

两数之和
https://leetcode-cn.com/problems/two-sum/solution/conlogner-fen-nei-er-fen-by-boille/

5. 最长回文子串
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。
输入: "babad"
输出: "bab"
注意: "aba" 也是一个有效答案
https://leetcode-cn.com/problems/longest-palindromic-substring/

1024. /
视频拼接 https://leetcode-cn.com/problems/video-stitching


1027. 最长等差数列
https://leetcode-cn.com/problems/longest-arithmetic-sequence/

300. 最长上升子序列
https://leetcode-cn.com/problems/longest-increasing-subsequence/




C语言积累一点点的更多相关文章
- python语言积累
调试打印堆栈 import traceback traceback.print_exc() #打印堆栈的详细信息
- sql语言积累
Persons 表: Id LastName FirstName Address City 1 Adams John Oxford Street London 2 Bush George Fifth ...
- JVM 平台上的各种语言的开发指南
JVM 平台上的各种语言的开发指南 为什么我们需要如此多的JVM语言? 在2013年你可以有50中JVM语言的选择来用于你的下一个项目.尽管你可以说出一大打的名字,你会准备为你的下一个项目选择一种新的 ...
- Dart 语言简述
Dart是一种“结构化的web编程”语言,Dart编程语言在所有现代浏览器和环境中提供高性能.Dart是谷歌开发的计算机编程语言,后来被ECMA认定为标准. Dart重要的概念: 1.所有的东西都是对 ...
- 再起航,我的学习笔记之JavaScript设计模式02
我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 我们 ...
- 再起航,我的学习笔记之JavaScript设计模式26(解释器模式)
解释器模式 概念介绍 解释器模式(Interpreter):给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子. 获取元素在页面中的路径 我们都知道获取一个 ...
- Python基础学习参考(二):基本语法
一.基本语法 既然是学习一门语言,它肯定有区别与其它语言的语法规则,现在就来解释一下python的语法规则是什么? 注释:通过"#"可以对python进行注释,注意是单行注释,如果 ...
- Python安装MySQL数据库模块
背景 折腾: [记录]使用Python操作MySQL数据库 的过程中,需要去安装MySQLdb. 下载MySQLdb 去官网: http://pypi.python.org/pypi/MySQL-py ...
- PHP变量入门教程(2)超全局变量,总共9个
PHP 超全局变量 $GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量.该数组的键标为全局变量的 名称.从 PHP 3 开始存在 $GLOBALS 数组. $_SERVER 变量由 ...
随机推荐
- Centos-gizp压缩文件-gzip gunzip
gzip gunzip 将一般文件进行压缩或者解压,默认扩展名为 .gz, 本质上 gunzip是gzip硬链接,压缩和解压都可以通过gzip完成 gzip 相关选项 -d 解压 -r 递归压缩目录下 ...
- centos7安装YouCompleteMe,vim打造成C++的IDE
一.安装python3 1.安装编译工具 yum -y groupinstall "Development tools" yum -y install zlib-devel bzi ...
- C++字符串的输入输出整理
最近在跟一门北大C++程序设计的慕课,openjudge上做到一道题,要求定义一种能够输入输出学生姓名,年龄,学号和学年成绩的类.比较特别的是输入的形式是以逗号隔开的一长串字符串. 我用的方法通过是通 ...
- 【题解】 P2734 [USACO3.3]游戏 A Game
\(\color{purple}{Link}\) \(\text{Solution:}\) 考虑区间\([l,r]\)的最优解.显然它可以由\([l+1,r]\)或\([l,r-1]\)转移而来.至此 ...
- vue的二级联动,数据是从php获取到的
1.首先,一级要有change改变事件的关键字,v-on:change="selectarr($event)" 这是created(){}函数里面的自动调用一级分类的数据 html ...
- 【4】进大厂必须掌握的面试题-Java面试-jdbc
1.什么是JDBC驱动程序? JDBC驱动程序是使Java应用程序与数据库进行交互的软件组件.JDBC驱动程序有4种类型: JDBC-ODBC桥驱动程序 本机API驱动程序(部分为Java驱动程序) ...
- python之线程了解部分
一.死锁(了解) 死锁产生的4个必要条件: 互斥:一个资源同一时刻只允许一个线程进行访问 占有未释放:一个线程占有资源,且没有释放资源 不可抢占:一个已经占有资源的线程无法抢占到其他线程拥有的资源 循 ...
- yii2框架路径相关
调用YII框架中jquery:Yii::app()->clientScript->registerCoreScript('jquery'); framework/web/js/source ...
- JAVA对象头详解(含32位虚拟机与64位虚拟机)
为什么要学习Java对象头 学习Java对象头主要是为了解synchronized底层原理,synchronized锁升级过程,Java并发编程等. JAVA对象头 由于Java面向对象的思想,在JV ...
- golang的http库使用代理
1.先上代码 package main import ( "crypto/tls" "flag" "fmt" "io/ioutil ...


