摘要: 初赛的题目还算是比较容易的, 不过因为缺少比赛经验比较紧张,拿到题目都不想仔细, 每次有一些想法,就赶紧写代码赶紧想提交,完全没有了平时的冷静, 最后导致大量的罚时。 这个必须得练,要是有做cf的冷静,也不会这个样子了... 下次做比赛的时候一定要注意, 一定要想清楚了再下手,要知道你每多提交了一次你就相当于多了花了20分钟思考, 而你在这20分钟把bug找出来就省了很多时间。平时做题目,稍微复杂的点的题,你都会将代码读一遍比赛的时候除非特殊的情况我觉得我也读一遍代码。。多思考一下,看哪里有问题。。a. 很水的题目b. 多重背包的题目吧 也是比较基础。#include <stdio.h& 阅读全文
posted @ 2013-03-22 13:05 chenhuan001 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 入门题,最近又一次想不起来背包的dp方法,无奈又得找道水题找找感觉...Charm BraceletTime Limit:1000MSMemory Limit:65536KTotal Submissions:15063Accepted:6880DescriptionBessie has gone to the mall's jewelry store and spies a charm bracelet. Of course, she'd like to fill it with the best charms possible from theN(1 ≤N≤ 3,402) a 阅读全文
posted @ 2013-03-21 16:47 chenhuan001 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 第一道DLX 的题, 算是模板题吧。看了很久的论文才看懂, 双向十字链表第一次写还是有点纠结。 但是耐心点还是没有问题的。搜素的优化,感觉这个超高效率的优化应该可以应用在很多方面。 在实现的过程中还有一个需要注意的东西,就是remove 和resume 要对称,不然就可能导致时间很慢或错误。。。#include <stdio.h>#include <string.h>#include <iostream>using namespace std;#define N 111000#define INF 0x3fffffffint n,m;int g[1010][ 阅读全文
posted @ 2013-03-20 16:38 chenhuan001 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 入门题吧。。。Perfect ServiceTime Limit:2000MSMemory Limit:65536KTotal Submissions:1220Accepted:593DescriptionA network is composed ofNcomputers connected byN− 1 communication links such that any two computers can be communicated via a unique route. Two computers are said to beadjacentif there is a communi 阅读全文
posted @ 2013-03-18 13:33 chenhuan001 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 贪心,先用dfs从1号结点开始,将经过的每个点都记录下来, 然后反向贪心, 这样就可以保证每次都先判断完子结点然后再判断父结点。 然后就是在在判断每两个相邻的点时(必须取一个),我们为了保证选的点数最小所以每次都选这个点的父亲结点,因为选了父亲结点绝对比选这个结点优。 然后每次都这样选择那么就可以保证最后结果最优。 然后要注意的是,每次确定一个点为支配集后,这个点的父亲结点也标记为可以到达的. Cell Phone NetworkTime Limit: 1000MSMemory Limit: 65536KTotal Submissions: 4930Accepted: 1739Descript 阅读全文
posted @ 2013-03-17 22:53 chenhuan001 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 无聊和欧阳一起比赛。。。才发现差距是巨大的, 欧阳的思维+编程的速度比我快了3倍左右。 也就是一般的题 我a了一题, 他就可以a 3题。加油吧, 菜鸟。a. 题意是简单的,但是情况稍微一点多。。。 注意这些情况就可以了#include <stdio.h>#include <string.h>#include <iostream>using namespace std;int main(){ int x,y; int x1,y1,x2,y2; int n,m,a,b; scanf("%d%d%d%d",&n,&m,& 阅读全文
posted @ 2013-03-17 17:05 chenhuan001 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 最近公共祖先。。 表示卡在一个位置卡了很久。。思维还是差了些,在一颗树上记录距离只需记录到根结点的距离,如果要求两个点的距离(一个点时另一个点的祖先)只需将他们到根结点的距离相减就行了.唉,其他的就是普通的LCA (离线)。等下去学有限的LCAHow far away ?Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2412Accepted Submission(s): 893Problem DescriptionThere are n ho 阅读全文
posted @ 2013-03-15 14:50 chenhuan001 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 这题想了比较久, 一直都有一个想法可是无法确切的提出。 那就是在题目中给出的残留网络中进行某些回流的操作然后得到一个负值就可以减少费用。。。可是我还是没有想到-只要残留网络中存在着负环那么就可以根据负环来更新最小费用。消圈定理:残留网络里如果存在负费用圈,那么当前流不是最小费用流。(证明略)那么就可以用spfa找出负环,然后对于环上的边都改变一个流向. 就可以得到结果。Time Limit:1000MSMemory Limit:65536KTotal Submissions:2631Accepted:688Special JudgeDescriptionThe City has a numbe 阅读全文
posted @ 2013-03-11 10:26 chenhuan001 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 其实题意很明确,最小费用最大流, 但是我这2货就建图就太二了, 我把所有的情况都弄到一个图里面。 总的点数有5000个,加上这么多的边,果断TLE。。。后面知道第k个的情况是独立的,所以可以分成K次建图。 然后每次的点为100, 这样复杂度会小很多很多。 以后注意了,不要那么二的全部都在一起。 要坚持点边越少越好。Minimum CostTime Limit:4000MSMemory Limit:65536KTotal Submissions:11552Accepted:3899DescriptionDearboy, a goods victualer, now comes to a big 阅读全文
posted @ 2013-03-10 09:43 chenhuan001 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 赤裸裸的最小费用最大流,不过话说KM 算法当然也可以搞定。Going HomeTime Limit: 1000MSMemory Limit: 65536KTotal Submissions: 14859Accepted: 7604DescriptionOn a grid map there are n little men and n houses. In each unit time, every little man can move one unit step, either horizontally, or vertically, to an adjacent point. For e 阅读全文
posted @ 2013-03-09 15:26 chenhuan001 阅读(167) 评论(0) 推荐(0) 编辑