摘要:
原本打算过完这个考试高峰期再来弄这个总结的,现在抽点空来写吧,后面貌似还有6门课要考呢。。。好的,总体来说这次省赛我们队是被完虐了,而且肖太可他们组运气也很不好,两个队居然包揽了银牌和铜牌的第一。。囧,我们铜牌实在是太挫了,还是实力太弱了。记得大一那次省赛酱油队我们也有40来名,一年过去了却只落得... 阅读全文
摘要:
第一次做线段成段更新的题,这题需要离散化。题意:给出几个矩形,求其覆盖面积。思路:先离散化x坐标,然后加入矩形的上下边,对矩形上下边根据高度进行排序后。建树,从最高的边开始更新线段树,然后就是通过给每条边赋值上边-1下边1,通过节点中iosum来判断每次线段树中的有效边,每次ans+=有效边*下一层... 阅读全文
摘要:
这题用单调队列需要分析好,当然也是自己思维不灵活,老想套用其他题的方法。题意:求出字串和,使其满足sum%p#include#includeusing namespace std;struct Node{ int x,pos;}a[2000010],s[2000010];int cmp(Nod... 阅读全文
摘要:
这题。。。。很明显的二分匹配。但是要注意没有匹配上的情况。由于学生和宿舍时一一匹配,则需要n#include#include#includeusing namespace std;#define CLR(arr, what) memset(arr, what, sizeof(arr))#define... 阅读全文
摘要:
这题我是在总结过程中想找二分匹配做做的,如果是平时我估计就直接深搜了。。二分匹配一开始没想出来如何建图,开始的思路有点阻塞,后来突然就明白了。题意,给一个n*n的棋盘 图中有X和。其中X代表墙,问棋盘中最多能放多少个‘车’使每个车都安全。先对行搜索,一行中若隔一个X则相当于有2行,找出所有的行并标上... 阅读全文
摘要:
这题建图自己想了半天搞不懂,然后看了一下别人的建图。。。一脸茫然。。最后去看了下胡波涛的《最小割模型在信息学竞赛的应用》里面详细的讲解了将最大获利问题转换为最小割模型的过程。建图:源点与人连边,容量为获利。站点与汇点连边,容量为耗资。然后是相应的人与其需求的站点连边,容量为无穷。这样建图就完成了,然... 阅读全文
摘要:
和上题一样,水过。代码:#include#include#include#define MAXN 815#define INF 1e8#define min(a,b) (ab?a:b)using namespace std;struct edge{ int u,v,w,next;}E[2000... 阅读全文
摘要:
这题拆点一开始没想明白。原本的思路是 源点与食物相连,食物与人相连,人与饮料相连,饮料与汇点相连。。这样就貌似做到了最大流的求法了,但是这样就会出现一个问题,同一个牛可以选择多次的问题,因此需要给每头牛给上一个容量为1的限制条件,那就是拆点啦!~代码:#include#include#include... 阅读全文
摘要:
上一题的模板应用,好久没做图论,结果建图一塌糊涂。。。题意,给出一个矩阵,求从左上角到右下角走k次使路上所得的权值最大,其中经过一个权值后,该点权值清零。思路:建图,每一个格子为一个点,同时衍生另外一个点,用来存清零后的路线,则每个点有两条路,一条是容量为1,权值为给出的值,一条为容量为k,权值为0... 阅读全文
摘要:
最小费用最大流模板,这是摘抄别人的模板、、、罪恶啊,等省赛后好好搞网络流自己敲。题意给出一个无向图,求1到n点最短环路,要求每个点只能经过一次;思路:即找出图中无交集的两条最短路,建图,源点与1,汇点与n相连,同时附容量为2,其他边则附容量为1。代码:#include #include #inclu... 阅读全文