上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 25 下一页

bzoj 1270 DP

摘要: w[i,j]代表高度j,第i颗树的时候的最大值那么w[i,j]:=max(w[i,j+1],w[k,j+heigh])+sum[i,j];但是这样枚举是n^3的,我们发现转移的第二个选择w[k,j+heigh]与当前第I颗树没有关系,所以记录一个高度为H的时候时的最大值直接O(1)转移就行了我也不知道咋回事儿,pascal一直RE,一年前能A的代码现在还是RE,然后向管理员联系了下,他们说数据没有问题,还把数据发过来了,一共5个点,最后一个点的in竟然30MB。。。,挂接都挂不了。。。/****************************************************** 阅读全文
posted @ 2013-12-29 20:47 BLADEVIL 阅读(307) 评论(0) 推荐(0) 编辑

bzoj 2821 分块处理

摘要: 大题思路就是分块,将n个数分成sqrt(n)个块,然后处理出一个w数组,w[i,j]代表第i个块到第j个块的答案那么对于每组询问l,r如果l,r在同一个块中,直接暴力做就行了如果不在同一个块中,l,r区间中整块的部分可以直接由w数组得到答案然后多出来的部分暴力处理下出现次数,然后再预处理一个b数组,代表没个数出现的位置,且每个数都连续,那么我们可以二分的找出在多余部分出现的每个数在整区间内出现多少次,然后和多余部分出现的累加,判断奇偶更新答案看了lyd的题解,写的挺好(其实这个题就是他出的。。),然后我写的pascal,他的C++的代码30s+A了,我就TLE了。。。话说今儿LYD生日,然后S 阅读全文
posted @ 2013-12-29 10:24 BLADEVIL 阅读(568) 评论(0) 推荐(0) 编辑

bzoj 3170 manhattan距离

摘要: 首先将坐标系顺时针旋转45度,得到一个新的坐标系,这个坐标系对应的坐标的manhattan距离就是原图中的距离,然后快排,利用前缀和数组O(N)求所有的答案,然后找最小值就行了,总时间O(NlogN),今天体力不足,在此不再赘述。。。/**************************************************************Problem: 3170User: BLADEVILLanguage: PascalResult: AcceptedTime:860 msMemory:19756 kb*********************************** 阅读全文
posted @ 2013-12-29 02:52 BLADEVIL 阅读(389) 评论(0) 推荐(0) 编辑

bzoj 1196 二分+生成树判定

摘要: 我们先二分一个答案,对于每个答案,先加一级公路,如果不够k直接break,然后再加二级公路,加的过程类似Kruskal。/**************************************************************Problem: 1196User: BLADEVILLanguage: PascalResult: AcceptedTime:444 msMemory:732 kb****************************************************************///By BLADEVILvarn, m, k :long 阅读全文
posted @ 2013-12-29 02:45 BLADEVIL 阅读(234) 评论(0) 推荐(0) 编辑

bzoj 2761 平衡树

摘要: 裸地平衡树,只需要用到find操作/**************************************************************Problem: 2761User: BLADEVILLanguage: PascalResult: AcceptedTime:1884 msMemory:1788 kb****************************************************************///By BLADEVILvartt, n :longint;tot, t :longint;left, right, size, key 阅读全文
posted @ 2013-12-29 02:31 BLADEVIL 阅读(260) 评论(0) 推荐(0) 编辑

bzoj 3293 数学整理

摘要: 和1045一模一样,找到这道题的时候还愣了下神,最后发现样例都是一样的,直接粘了1045的代码,具体题解看http://www.cnblogs.com/BLADEVIL/p/3468729.html/**************************************************************Problem: 3293User: BLADEVILLanguage: PascalResult: AcceptedTime:296 msMemory:15852 kb***************************************************** 阅读全文
posted @ 2013-12-29 02:11 BLADEVIL 阅读(252) 评论(0) 推荐(0) 编辑

bzoj 1497 最小割模型

摘要: 我们可以对于消费和盈利的点建立二分图,开始答案为所有的盈利和,那么源向消费的点连边,流量为消费值,盈利向汇连边,流量为盈利值中间盈利对应的消费连边,流量为INF,那么我们求这张图的最小割,用开始的答案减去最小割就是答案,因为最小割的存在不是左面就是右面,割左面,代表建这条路,需要对应的消费,那么割右面代表不要这项盈利,那本来加进去的盈利应该减掉,所以可以这样更新答案。/**************************************************************Problem: 1497User: BLADEVILLanguage: PascalResult: A 阅读全文
posted @ 2013-12-29 02:07 BLADEVIL 阅读(706) 评论(0) 推荐(0) 编辑

bzoj 1024 暴力深搜

摘要: 我们直接暴力的深搜怎么切就行了,每一刀切的方案只有横着和竖着,横竖又分在几等分点切,因为要保证每个人的面积相同,所以比较好处理了,第几个几等分点就分给这边几刀。/**************************************************************Problem: 1024User: BLADEVILLanguage: PascalResult: AcceptedTime:608 msMemory:224 kb****************************************************************///By BLAD 阅读全文
posted @ 2013-12-29 01:54 BLADEVIL 阅读(359) 评论(0) 推荐(0) 编辑

bzoj 3039 悬线法求最大01子矩阵

摘要: 首先预处理每个F点左右,下一共有多少个F点,然后对于每个为0的点(R),从这个点开始,一直到这个点下面第一个R点,这一区间中的min(左),min(右)更新答案。ps:我估计这道题数据有的格式不对,开始过不去,后来改了读入就能过了/**************************************************************Problem: 3039User: BLADEVILLanguage: PascalResult: AcceptedTime:808 msMemory:17252 kb************************************* 阅读全文
posted @ 2013-12-29 01:46 BLADEVIL 阅读(272) 评论(0) 推荐(0) 编辑

bzoj 1015 并查集

摘要: 逆向思维,先将整张图以最后所有要求的点毁掉的状态建图,然后倒着加点就行了,用并查集维护连通块/**************************************************************Problem: 1015User: BLADEVILLanguage: PascalResult: AcceptedTime:2588 msMemory:16340 kb****************************************************************///By BLADEVILvarn, m, k :longint;flag :a 阅读全文
posted @ 2013-12-29 01:25 BLADEVIL 阅读(391) 评论(0) 推荐(0) 编辑
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 25 下一页