- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 100道动态规划——20 HDU 1257 最少拦截系统 LIS 啊!我为什么这个都没有想到!
。。。挺厉害的,我没有想到是LIS。。。看到以为要求总共有多少条最长不增子序列,然后不断的跑动态规划。。。还WA 看到题解之后捶胸顿足,居然是一道LIS?,而且还是裸的LIS?!少年啊少年,你的洞察力还不够呀! #include #include #include using namespace std; int n,k; vector arr,dp; int main(){
2016-12-22 14:24:52 1295
原创 UVA 220 Othello 模拟题
动态规划做多了也想做一点别的题来换一换口味,就写一个模拟题好了。 这个题我感觉还是挺好写的,check是一个重载函数,假如给了dir的话,就判断在dir的方向上是不是合法,假如没有给dir的话,就默认在所有8个方向上判定是不是合法,最后返回一个bool值 change用于改变局面,print打印整个局面,turn用于表示current player,black为2,white为1,在棋盘上也是
2016-12-20 21:27:20 644
原创 100道动态规划——19 UVA 12105 Bigger is Better 状态的定义以及转移方程
火柴棒的题目在ACM里面我觉得是很常见的了,这一次居然在DP里面遇见了。 题目大意是用少于等于n根的火柴,拼出能够被m整除的最大的数。 第一次见这样的状态定义,学习学习..... 定义状态dp[i][j]表示在已经用了i根火柴的情况下拼出来了除以m余数为j的数的最大长度,一个辅助数组p[i][j]
2016-12-17 07:23:35 1481
原创 20161214 感想
二来一旦投入进去会容易把工具当成目的,而沉浸在工具的把玩之中享受那种轻而易举的满足感和虚假的充实感,对于形式的追逐是会上瘾的
2016-12-14 14:41:19 512
原创 100道动态规划——18 UVA 1336 Fixing the Great Wall 指标函数的分解,刷表法
这道题目的在处理状态转移上面和我以前写过的一道题有点相似http://blog.csdn.net/good_night_sion_/article/details/52918040,这两个的思想是类似的,把一整个代价拆成一次次,然后累加 这道题目我用的是刷表法,为了计算代价的时候方便,采用了一个前缀和数组来储存delta。 状态的定义在之前也看到过,定义状态[i][j][k],表示i~j的区间
2016-12-12 07:45:40 797
原创 100道动态规划——17 UVA 10934 Dropping water balloons 猜数问题
老实说我感觉这个更加像递推。。而不是动态规划。 一开始对答案是很疑惑的,后来去问了dalao,dalao告诉我这是猜数问题,于是我就找关于猜数问题的资料看,发现他们本质是确实是同一个问题。 这里把链接放出来:http://wenku.baidu.com/link?url=fpTY4pNQy0seexyQQbA2dnMUj-_DewqBq2ndP5o8oqVYsRkFf3krlBNon2rlRa
2016-12-06 08:13:45 1473 49
原创 100道动态规划——16 UVA 1627 Team them up! 二分图,背包,不过关键还是学会转化
确实,这道题目只要知道怎么看之后就好写很多了,关键在于知道这样看。 判定每一个连通块是不是一个二分图,假若有一个不是的话,那就是无解。 一个连通块被划为二分图是唯一的嘛(反证法),然后就可以处理出两队,把这两队的人数之差作为一个物品。 这样最后的问题就变成了,在所有物品都必须拿的情况下,背包的价值最接近0。 那此时的状态就是“定义dp[i][j+n]代表前i件物品的价值之和是j的情况是不是
2016-12-01 20:53:47 942 35
The Lambda Calculus Its Syntax and Semantics 2nd pdf
2018-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人