
2012多校
文章平均质量分 85
百里屠猪
I'm an ACMer!
展开
-
2012 Multi-University Training Contest 4[hdu4331~4339]
hdu 4332 Constructing Chimney 状态压缩dp+矩阵优化, 256×256的暴力方法,幂矩阵的预处理和某项为0时的跳出优化,时间1s多, 还要消化下那个循环移位取最小的神优化能化到35×35typedef long long ll;typedef unsigned int UI;using namespace std;const int SZ=256;c原创 2012-08-06 13:22:09 · 571 阅读 · 0 评论 -
2012网赛杭州赛区
1002 arrest有k个警察在0点按顺序遍历1到n去抓小偷, 这样构图时就要对编号小的连向编号大的, 之前要floyd处理。我赛后的构图:对每个点的遍历有个限制是必须是1次, 由于是费用流, 可以用将该流置为-inf的方法,强制改变访问一次。当时比赛时zzc的构图:跑k次网络流, 分别枚举1~k个警察情况下的最小费用, 也同样用了一个-inf的方法, 不过是加到了城市之间的连通原创 2012-09-25 20:21:09 · 1373 阅读 · 0 评论 -
2008年成都赛区(中山)
2474 Process scheduling a题 multiset multimap用法#include #include #include #include using namespace std;const int maxn=50000+123;struct Proc{ int a[10], r[10]; bool rls;}p[maxn];//in原创 2012-10-05 12:45:15 · 2126 阅读 · 0 评论 -
2012网赛成都赛区
a题是cf 85d原题, 纯数组模拟o(n^2)就过了, zzc的o(n*sqrt(n))的分块都tle了,无力吐槽int a[100005];char ss[55];int main(void) { int n; while (~scanf("%d", &n)){ int l = 0; for (int i=0; i<n; i++) { scanf("%原创 2012-09-15 21:59:55 · 2004 阅读 · 0 评论 -
树链剖分
http://blog.sina.com.cn/s/blog_7a1746820100wp67.html 别人转的讲解, 看的这个学的。感觉不是必要的方法, 其他方法也能做的, 一般要维护树种路径的最值时才需要这个算法spoj375对边权的路径剖分#include #include #include #include #include using names原创 2012-08-25 10:47:40 · 921 阅读 · 0 评论 -
2012网赛天津赛区 2012tianjin regional online contest
b题 平衡树 或multiset.hdu Problem 4279#include #include #include using namespace std;const int maxn=100000+123;///int ax[maxn], ay[maxn], bx[maxn], by[maxn];multiset > card;struct Node{ i原创 2012-09-11 20:58:13 · 656 阅读 · 0 评论 -
dancing links X算法
hust 1017Exact cover就是knuth论文里拿来举例子的题, 算是精确覆盖的裸题了。#include #include /** 在01矩阵找一个行集合,使其精确覆盖所有的列所谓精确覆盖就是所有行中含1的列有且仅有一个,而重复覆盖允许有多个。**/const int maxn=100000+123;const int maxc=1000+5;int原创 2012-10-09 19:13:35 · 1485 阅读 · 0 评论 -
一些偏的数据结构整理【整理+复习】
BKTree:matrix67's bloghttp://baike.baidu.com/view/2020247.htm 划分树: http://blog.youkuaiyun.com/jxy859/article/details/7755201可持久化线段树:kd-tree:树状数组:1166 敌兵布阵http://bl原创 2012-08-01 11:10:03 · 690 阅读 · 0 评论 -
dlx 精确覆盖
dlx的合集比赛点击这里 hustpoj 3074 标准数独模版#include #include /**在计算科学理论中,这一类问题的解答被称之为NPC问题中的Hitting Set Problem,中文名应该叫做碰集问题。该类问题可以通过转换成为精确覆盖问题,其中以行表示概然,以列表示常规约束。在数独问题中,行所表示的概然状态很明显为(r,c,k)即行,列,放置的数原创 2012-10-11 21:43:04 · 691 阅读 · 0 评论 -
2012网赛金华赛区
hdu 4405 Aeroplane chess期望dp..倒着推方便一些。 dp[i]记录从i到终点用的次数的期望, dp[0]为答案。#include #include #include #include #include using namespace std;const int maxn=100000+123;double dp[maxn];int fly原创 2012-09-22 20:51:57 · 1656 阅读 · 0 评论 -
2012网赛长春赛区
a题 4267 A Simple Problem with Integers一直纠结在如何缩减区间, 后来发现直接更新就好了, 比如更新模10余1的在1到20区间上, 我们需要更新的是1和11, 在新区间上应该是【1, 2】 但是其实直接去更新模10余1那颗树上的【1,20】其实就可以, 因为查询除模10余1之外的数,是不会访问到这颗树的更新, 自然也不会影响其他位置的值int原创 2012-09-10 15:59:40 · 1788 阅读 · 0 评论 -
2012 Multi-University Training Contest 10[hdu4390~4399]
多校终于结束了, 开始从后往前整理4390 Number Sequence容斥原理, 比赛的时候把10^25理解成2^25以为不会超long long, wa了好几次,最后队友提醒才看到#include #include #include #include #include #include #include #include #include #原创 2012-08-24 20:49:42 · 1403 阅读 · 0 评论 -
2012 Multi-University Training Contest 3[hdu4320~4330]
hdu4222 candy http://acm.hdu.edu.cn/showproblem.php?pid=4322费用流 看题解构图过的, 同时利用了边的费用和流量 题解这里, 【题目大意】有N颗糖果和M个小孩,老师现在要把这N颗糖分给这M个小孩。每个小孩i对每颗糖j都有一个偏爱度Aij,如果他喜欢这颗糖,Aij = k,否则Aij = 1。小孩i觉得高兴当且仅当ΣCij×A原创 2012-08-01 11:12:12 · 630 阅读 · 0 评论 -
2012 Multi-University Training Contest 5[hdu4340~4349]
hdu4340#include #include #include #include #include #include #include #include #include #include #include const double pi=cos(-1.);const double eps=10e-6;const double eps1=10e-9;const原创 2012-08-08 13:30:44 · 731 阅读 · 1 评论 -
hdu 4253
陈题, 有篇论文, 利用了N多生成树的性质,大体思想就是通过调整某种边的权值后生成一个最小生成树, 这个新树所分的结构是与原树2种边按此分法生成的最小生成树是最优的, 这样就转换成了一种枚举一种边增加的权值后的生成树的算法, 而且我们要找的是一个区间 http://oj.tsinsen.com/resources/Train2012-test-clj-tree.pdf #in原创 2012-07-24 17:07:56 · 1274 阅读 · 0 评论 -
2012 Multi-University Training Contest 2 [hdu4310~4319]
hdu4317 nim+状压dp, Unfair Nim 状态很容易想到,转移就恶心了。。。 不过屡清思路就好了#include #include #include #include #include #include #include #include #include #include #include const double pi=cos(-1.);const原创 2012-07-27 17:39:11 · 656 阅读 · 0 评论 -
2012 Multi-University Training Contest 1[hdu4300~4309]
4300 一开始向到了后缀数组, 后来才弱爆了发现是kmp的变形, 修改下匹配的起点, 并且返回的是文本串匹配完时模式串当前的位置就可以了, 比赛的时候真是弱爆了T.T #include #include using namespace std;const int maxn=100000+5;char pat[maxn], str[maxn];int P[maxn];///原创 2012-07-21 14:40:14 · 598 阅读 · 0 评论 -
2012 Multi-University Training Contest 6[hdu4350~4359]
4351 Digital root4355 Party All the Time 两种解法, 一种三分,一种dp三分是要满足凹凸性的, 既二阶导数不变号, 这个很好证明的, 题目要求的是sigma|p-xi|^3*wi, 不妨对每项拆开讨论 :|p-xi|^3*wi ,当p>=xi时 原式为(p-xi)^3*wi 二阶导为(6p-6xi)*w原创 2012-08-09 18:29:38 · 810 阅读 · 2 评论 -
2012 Multi-University Training Contest 8[hdu4370~4379]
4370 0 or 1就2种情况, 一种是1到n的最短路, 一种是包含1的环和包含n的环, 第一种情况直接sssp就好, 第二种比较好的处理方法就是枚举环的一个点, 然后用sssp得到的dist数组去求2个最小环, 相加即可,我的方法是再跑遍floyd, 不过要用dist优化一下, 提前排除不是最优解的情况, 1600ms水过#include #include #include原创 2012-08-16 18:24:26 · 764 阅读 · 0 评论 -
2012 Multi-University Training Contest 9[hdu4380~4389]
hdu 4386 Quadrilateral公式 或三分法枚举任意2边为临边的对角线。 hdu 4388 Stone Game II 博弈 , 很好的题比赛的时候由于4387卡住了, 而且4388的操作又太复杂, 所以没太仔细去分析题目的本质, 题目大致的意思是初始n堆石子 没人轮流选一堆石子进行操作, 该堆石子的总数设为a, 要求拿走一定数量的石子, 使其剩余k个原创 2012-08-22 23:02:20 · 855 阅读 · 0 评论 -
网络流【复习+总结】
把自己以前写的网络流解题报告和网络流算法再看下,在这里总结下,当复习了。sap算法, 目前我最常用的, 第一次学的时候代码就不太理解,只会贴模板,于是重新敲了下,当时第一题的链接:sap一些优化的思想http://blog.youkuaiyun.com/jxy859/article/details/6630182对于有些特殊的题目, 反而用sap会很慢, 比如一些n和m比较大,而U是一个较小的数,原创 2012-07-23 10:38:02 · 712 阅读 · 0 评论