- 博客(75)
- 资源 (1)
- 收藏
- 关注
转载 HDU2476:String painter 区间dp
转自:http://blog.csdn.net/libin56842/article/details/9708807还是看不懂。。dp[i][j]=min(dp[i][j],dp[i+1][k]+dp[k+1][j]); 为什么是这公式#includeusing namespace std;#define bug1 printf("bug1\n");#def
2017-04-30 20:47:30 223
转载 uva11134 fabled rooks 贪心+问题独立分解
有点不太明白为什么问题是独立的。。这里这样贪心是因为,越往小的地方走,灵活性越好。。 #include#includeusing namespace std;#define sf scanf#define pf printf#define mem(a,b) memset(a,b,sizeof(a));#define inf 0x3f3f3f3f#define IN
2017-04-30 15:48:00 268
转载 HDU4283:You Are the One(区间DP)
转自:http://blog.csdn.net/libin56842/article/details/9722077自己还是不会。。关键在于找子问题和决策,,,他这里很详细。。决策就分。。。 第一个,第k个,(k为1~n),,这样的话就是枚举了。。‘(一般都要这种枚举的过程)
2017-04-30 11:57:11 186
转载 2017软院金山WPS补题 L
比赛的时候题意看不懂。。 然后就卡了。。L题就是模拟操作系统的LRU算法。就是维护一个链表,如果要替换的话就找到最后一个替换,如果要插入的话就插入到开头,如果在链表中已经存在的话,就把这个提到链表的开头,然后搞一下就行了。看了别人的做法, 用的是queue+map cnt与queue中的元素个数不是同步的 。’不过我觉得这样不是那么容易想到。。标程, 应该是双向链表吧。。//自己应该要会用map
2017-04-30 07:52:14 378
转载 Multiplication Puzzle POJ - 1651 区间dp
转自:http://blog.csdn.net/power721/article/details/5804319自己实在太逗了。。因为有个数拿了之后会对后面有影响。。所以我还打算把a[I]=0,然后dfs来记录,,但是不太可能表示状态。。;然后看了别人的题解。。其实这就只是这道题实质上就是矩阵连乘,动态规划——矩阵连乘问题因为:如
2017-04-28 12:10:32 237
转载 Cake ZOJ - 3537 区间dp
自己查错的时候的方向太逗比了。。就是最后应该使用做完凸包后的res 点的坐标来弄。。我却还是用原来的node结果就会有点弄不到。。我的debug应该要在关键位置才可以啊。#include#include#include#include#include#includeusing namespace std;#define rep(x,n) f
2017-04-28 10:32:11 200
转载 Coloring Brackets CodeForces - 149D 区间dp
分析:自己也想到了用四维数组存但是我逗比地用了dp[l][r]=dp[l+1][r]+dp[l][r-1];。、还是做题少。。也许我还是应该多看看题解。。(要不然想错了。。然后自己没有锻炼到能力,又白白走神)只不过重点是看过题解之后自己能不看代码敲出来;或者看了代码之后能不看代码敲出来。。这样就理解了。。再次低效。。有时候觉得还会
2017-04-27 20:45:34 255
转载 uva12661 最短路
很奇怪为什么刚开始写的那个是错的。。#include#include#include#include#include#include#include#include#include#include#define bug1 cout<<"bug1"<<endl;using namespace std;#define inf 0x3f3f3f3f#define sf sc
2017-04-26 22:19:13 311
转载 未完成, (学习学长的处理年月日的方式)
代码不知道哪个细节错了。。、下次再要独立敲#include#define ll long longusing namespace std;const int maxn=10005;int Month[2][13]={ {0,31,28,31,30,31,30,31,31,30,31,30,31}, {0,31,29,31,30,31,30,31,31,30
2017-04-26 21:21:08 152
转载 uva 4857 区间dp
自己没有想出来,,也想过逆推,但是在dp[i][j] = min(dp[i + 1][j] + 1, dp[i + 1][k - 1] + dp[k][j])。//中,我没有想到有 dp[i + 1][k - 1] ,其实这个是代表脱掉这些衣服。转自:http://blog.csdn.net/fungyow/article/details/47358821题意:Gappu有n
2017-04-26 19:56:29 189
转载 zoj 2760 How Many Shortest Path floyd+最大流+处理的技巧
自己一开始没有想到枚举边。。然后在Floyd的时候发现不可以。。然后就还是用 addedge来求最短路。。、然后又发现还是很麻烦,,对于dt的要反着求。、然后看别人的题解。。发现还是用Floyd 只是之后 用两次for循环就可以枚举边;了。。//看了别人的,,他们一开始存边的时候还是会存-1,,然后再在Floyd中判断,,是否联通还有,自己好像有点把Fl
2017-04-26 11:03:11 217
转载 Ombrophobic Bovines POJ - 2391 Floyd+ 二分+最大流
Floyd+ 二分+最大流vj挂了,不知道对不对#include#include#include#include#include#include#includeusing namespace std;#define mem(a,b) memset(a,b,sizeof(a));#define sf scanf#define pf printf#define L
2017-04-26 09:31:30 278
转载 poj 1149 pigs
这个地方的建模不容易啊。。。而且还有就是自己敲的时候凭自己想,,结果错了多次。。还有就是人与人之间的连接不是随便连的,,,而是要的才连过去。。我已开始以为是 k区间覆盖一样连。#include#include#include#include#include#include#includeusing namespace std;#define
2017-04-25 21:39:42 173
转载 挑战 P243 poj3686 (WA) 最小费用流,不知道为什么。
自己不知道为什么wa了。。明明都是照着书本抄的。。还有就是自己的写法不知道为什么是错的。。。他这里好神奇,居然把一个工厂拆成多个工厂 ,然后每个工厂的时间都变多。。他这里好的地方:(1)自己先举一个工厂的例子,,然后发现规律, , 然后把一个工厂拆开之后刚好就可以变成最小费用流做。。。 因为变为2*t时间的工厂之后,就不会有一个工厂同时做两个玩具,,也就能变成流量 为1 的网络流。。
2017-04-24 22:01:00 218
转载 挑战P240 poj2175 最小费用最大流(TLE)
这个地方最开心的就是原来输出每条路径的流还是挺简单的。。只要把G, edges提出来,就能在外面输出了。。。但是这里还是TLE了,因为紫书给的最小费用流的算法不是很高效。。先不深究了。。。#include#include#include#include#include#include#includeusing namespace std;#define mem(a
2017-04-24 20:13:55 611
原创 poj 2135 最小费用流
这道题和那个“ 不相交道路”非常类似。。但是这里可以让一个点走多次,,所以更加简单了。。。直接把每条道路 流量为1,,然后 费用就是道路长度。。求流量为2的最小费用流。#include#include#include#include#include#include#includeusing namespace std;#define mem(a,b) memse
2017-04-24 19:11:45 216
转载 挑战 p236 poj 3469 网络流
这种建模的方式挺经典的。。对于最小费用化为两个集合的 问题, 可以转化为最小割。然后如果属于S,那么就割掉到S的边。。还有就是在这里的模块组合 的概念。。。要想切断联系,就要付出费用,,所以 组合中的两个顶点连边#include#include#include#include#include#include#includeusing n
2017-04-24 17:40:19 161
转载 挑战 P234 poj3281
这道题和那个不相交的最短路径很像。。 要想让一个东西只被用一次,就把他拆开但是我一开始的做法错了。。。因为我的做法使得 一头牛可能被用了2次。。还有就是我有一个地方要注意不要wa#include#include#include#include#include#include#includeusing namespace std;#define mem(a,b
2017-04-24 16:58:44 208
转载 挑战 poj 3041 二分图最大匹配算法 (匈牙利算法)
原来这就是匈牙利算法,,,就是用来求二分图最大匹配的算法。。代码比较短。。还有就是这里V会是1000, 所以maxn为1005;#include#include#include#include#include#include#includeusing namespace std;#define mem(a,b) memset(a,b,sizeof(a));
2017-04-24 15:44:16 214
转载 最小费用流: uva 1658
最小费用流可以求某个流量的最小费用流,也可以直接求最大流量的最小费用流某个流量的最小费用流: int MincostFlow(int s, int t, int flow_limit, int& cost) { int flow = 0; cost = 0; while(flow < flow_limit && BellmanFord(s, t, f
2017-04-24 11:53:02 237
转载 17浙江省赛 数位dp or xjb乱搞
转自:http://www.cnblogs.com/wuwangchuxin0924/p/6749799.html居然可以用数位dp,看来自己还是没有学好啊。。。但是用苏大佬的做法做的还是wa了,,不知道还有哪里没有考虑周全,,不过那种思想还是挺好的。。//大概对于数位dp 的进一步思考:就是有挺多是重复计算的,如果位数相同的话,这个时候只要是sum相同的,那么之后的结
2017-04-23 20:29:04 293
转载 dfs。。状态压缩dp poj3411
http://www.cnblogs.com/shenben/p/5577665.html居然可以用dfs做出来。。
2017-04-23 09:52:15 222
转载 poj 2411 状态压缩dp
转自:http://www.cnblogs.com/chasetheexcellence/archive/2012/04/16/poj2441.html他还推荐了一个论文。。反正我是不会敲的。。他给出了之后我还觉得这个是有点像是DAG。。#include#include#include#include#include#include#in
2017-04-22 22:09:23 246
转载 Headmaster's Headache UVA - 10817 状态压缩
用两个集合来实现的状态压缩。。基本是照着代码敲的。。。收货;(1):stringsstream要在这里会用l。。。(2)这里的 if(i>m)这个分界放的好。。还有就是要理解这里到两个集合为什么是这样。。还要知道这个记忆化很好写。。#include#include#include#include#include#include#in
2017-04-22 21:16:29 254
原创 状态压缩or 最短路 poj2686
自己居然做出来了。用状态压缩的。。但是用djk却是MLE 啊,然后改了之后是TLE。。。这用dp是因为这个DAG状态dp#include#include#include#include#include#include#include#include#include#include#include#include#define ll long long#de
2017-04-22 20:16:36 244
转载 Full Tank? UVA - 11367
原来最短路不难。自己老是觉得自己不会。。虽然这道题我是看了别人的博客才写出来嘚。。没想到这里真的就是一升一升地加。。居然不会TLE。。,应该是在这个地方用djk比较快。。不过还是觉得自己敲的比较慢。。。看了http://blog.csdn.net/murmured/article/details/18847005#include#include#in
2017-04-22 12:32:48 290
转载 798B - Mike and strings 各种方式。
自己当时打算用bfs,,结果MLE了。。想想简直太傻了。。没有利用好条件,,条件说只会把最前面的放到最后面去。。这个时候就应该想到之前看过的,,把两个字符串合并在一起啊。。(这个不是就是KMP的吗。。)(看来是思维没有掌握。。)分析:肯定是把所有串变成其中一个原本就有的串是最优的。。。(我无法证明。。我是弄了一个各种可能。。)我的代码奇丑务必,放在最后。。
2017-04-22 10:36:24 516
转载 Adventure of Super Mario UVA - 10269 spfa+floyd
这个地方我原本打算用 node结构体中 存上remain的,,但是这样的话自己觉得代码太长而且分类讨论太多。(其实我的一些分类讨论有点多余。。或者说其实可以更加精短的。。)然后看了别人用的这个Floyd的,,挺好的。。而且大概知道了为什么会有vis的二维数组,,因为这样判重中才有k的次数。。。才能体现spfa的快速#include#include#include#
2017-04-21 20:44:10 160
转载 dfs 简单穷竭搜索。AOJ 0525
自己居然看到这题虽然想到了,如果0的 数量比1多就+0的,否则加1 的 ,但是自己居然没有想到要枚举着弄行的变换次数,,不会穷举,,其实dfs也能用来相当于2进制集合 的枚举。还是不用bitset,不会。#include#include#include#include#include#include#include#include#include#include#inc
2017-04-21 08:01:59 255
转载 hdu3001 三进制 状态压缩dp
转自:http://blog.csdn.net/u011721440/article/details/39738173都过了这么久了。。。我连这么基础的状态压缩dp都不会。。
2017-04-20 22:54:26 321
原创 Walk Through the Forest UVA - 10917 DAG上的图
居然AC 了,,越来越不自信了。。还以为自己在dfs的时候肯定会有地方错。。。然后用dp的时候可能也会错。。结果过了。。这道题让我对于DAG的dp算法有了跟进一步的了解。。。#include#include#include#include#include#include#include#include#include#include#
2017-04-20 11:18:30 263
转载 uva11090
模板的威力真大。。我照着模板写,必要时把int 改为double然后这道题用二分,,因为有模板 写的时候的衔接度很高。。。一下就能过了。。#include#include#include#include#include#include#include#include#include#include#include#include#
2017-04-19 22:02:19 213
转载 It's not a Bug, it's a Feature! UVA - 658
感觉还是可以做出来的,,就是我还想再输入的时候把pre和rear也处理成整数,然后就纠结弄成10进制呢。。然后对于0怎么搞。。就有点凌乱,但其实不用,而且我有疏漏的地方:(1)自己不会对于某个位附0操作(2)自己没有弄dist数组,其实这就是 spfa最短路与bfs搜索的区别,,并不是我搜到之后就直接是最短了。。。而是要弄个dist数组,然后用优先队列,然后才是最短的。。
2017-04-19 21:28:00 267
转载 uva 1395 slim span MST
(注意看样例来确定自己的枚举,不要再出这样的错误了。。#include#include#include#include#include#include#include#include#include#include#include#include#define ll long long#define inf 0x3f3f3f3f#define INF 1e9
2017-04-19 12:44:29 214
转载 uva10163 Storage Keepers (未能自己敲出来)
转自:http://www.cnblogs.com/kedebug/archive/2012/11/27/2790124.html自己还是不会,,其实这些题目我应该看做两个问题,,也许就比较好做了。。。#include #include #include #include using namespace std;const int MAXN = 11
2017-04-19 12:40:28 256
转载 uva1631 Locker 记忆化搜索
自己想用d[I][j], 然后不会了。。然后看别人的题解,感觉好巧妙。。他这里之所以枚举是因为 1000*10*10*10 用了记忆化搜索后并不会TLE ,可能自己连暴力, 模拟的这一块都还么有搞清楚。。#include#include#include#include#include#include#include#include#include#
2017-04-18 20:06:32 414
转载 poj2502 关于输入部分的坑。。
这道题有两个注意点,,第一就是输入, ,关键就是输入,, 所以我放入模板记忆中。。第二就是我还是经常犯的错误吧。。。就是如果dIst是double的话,,我应该要用for(赋值,而不是用mem赋值为inf#include#include#include#include#include#include#include#include#include#includ
2017-04-18 15:32:02 321
转载 poj 3159 分糖果 第一次差分约束+ 用堆栈实现spfa(更快)
看了kuangbin大神的,,原来可以这样实现堆栈,而且还更快,快了 1s , 、而且原来差分约束的这个意思。。就是对于不等式组用最短路#include#include#include#include#include#include#include#include#include#include#include#include#define
2017-04-18 13:14:41 359
转载 uva10723 类似LCS的dp dayly
转自:http://blog.csdn.net/helloworld10086/article/details/43916135这道题自己没有细想,连求最短的串的长度都没想。。。有点浪费了这道题,,关于求 方案的个数,,我觉得应该大概都是这种的。。#include #include #include #include #include using na
2017-04-17 17:38:50 468
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人