随笔分类 -  CSUOJ

摘要:dp套一个burnside的壳子核心还是dpdp[i]表示有i个循环节时的染色方案数注意在dp的时候,不需要考虑重构的问题因为burnside会解决重构的问题dpA[i][j]表示以A开头,长度为i,结尾为j个A的合法方案数dpB[i][j]表示以B开头,长度为i,结尾为j个A的合法方案数接下来我们... 阅读全文
posted @ 2014-05-26 12:08 浙西贫农 阅读(382) 评论(0) 推荐(0)
摘要:一看到这个题就知道是最大闭合子图了,关于最大闭合子图的定义和建图,都是看胡伯涛的论文上的。这里有两问,首先是要求闭合图权最大,第二问,也是比较有难度的就是在闭合图权最大的条件下,尽量多的让dream所代表的点出现在最大权闭合图的闭合图中。最大闭合图是最小割模型的一个应用。由于一个流网络的最小割可能不唯一,所以最大闭合图也不一定是唯一的,所以第二问的难度就增加了。这里的解决方法是借助偏移量来维护两个量,一个是最大流,一个是用到的点数。由题意可得,图中点数最多将达到2002,那么现在选择一个MOD=3000的偏移量。首先要统计图中所有点权为正的点的权和sum。建图的时候,对于每个价值为value的 阅读全文
posted @ 2013-10-02 19:50 浙西贫农 阅读(258) 评论(0) 推荐(0)
摘要:第二次做自己学校OJ的题目,贡献了三个TLE,两个RE。。其实这是一道非常非常经典的DP题。题目的意思,在标程里面写的很清楚了:从数列中选取若干个数,使其和与M的差的绝对值最小。我开始想到的是那个分硬币的题。那种近乎暴力的方法,在这道题目上用,TLE了,因为这个数据的大小就是超了原来的想法,刚开始题目没看清楚,以为能过的。现在简述一下解决这个问题:从数列中选取若干个数,使其和与M的差的绝对值最小 的思路。我们用一个数组d[i][j]来表示/取到第i个数字时,在a[1],a[2]......,a[i]个中/任取若干个数/的和,使得/这个和/与j的差值/的绝对值/最小的时候/的这个差值。当i=0时 阅读全文
posted @ 2012-04-12 18:08 浙西贫农 阅读(208) 评论(0) 推荐(0)