上一页 1 ··· 40 41 42 43 44 45 46 47 48 ··· 52 下一页
摘要: 简单bfs,位运算判重 ,瞬间秒杀翻纸牌游戏Time Limit: 9000/3000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1574Accepted Submission(s): 515Problem Description有一种纸牌游戏,很有意思,给你N张纸牌,一字排开,纸牌有正反两面,开始的纸牌可能是一种乱的状态(有些朝正,有些朝反),现在你需要整理这些纸牌。但是麻烦的是,每当你翻一张纸牌(由正翻到反,或者有反翻到正)时,他左右两张纸牌(最左边和最右边的纸牌,只会影响附近 阅读全文
posted @ 2013-05-05 02:07 chenhuan001 阅读(205) 评论(1) 推荐(0) 编辑
摘要: KM最佳匹配。KM算法是通过给每个顶点一个标号(叫做顶标)来把求最大权匹配的问题转化为求完备匹配的问题的。设顶点Xi的顶标为A[i],顶点Yi的顶标为B[i],顶点Xi与Yj之间的边权为w[i,j]。在算法执行过程中的任一时刻,对于任一条边(i,j),A[i]+B[j]>=w[i,j]始终成立,初始A[i]为与xi相连的边的最大边权,B[j]=0。KM算法的正确性基于以下定理:设 G(V,E) 为二部图, G'(V,E') 为二部图的子图。如果对于 G' 中的任何边<x,y> 满足, L(x)+ L(y)== Wx,y,我们称 G'(V,E&# 阅读全文
posted @ 2013-05-05 00:12 chenhuan001 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 一开始以为这题是二分图的匹配,然后用匈牙利做,TLE,然后用HK 做, TLE。。。最后发现是用网络流做的,而且要将100000个点压缩, 因为每个点的可能选择情况有2^10 ,所以根据这个可以将图压缩成1000*10大小的图,这样用网络流就没有压力了...网络流建模很重要.!EscapeTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2483Accepted Submission(s): 687Problem Description2012 阅读全文
posted @ 2013-05-01 15:40 chenhuan001 阅读(211) 评论(0) 推荐(0) 编辑
摘要: int g[15]={0,2,7,5,30,169,441,1872,7632,1740,93313,459901,1358657,2504881};打表比较好吧,13的数据量。如果用循环链表模拟暴力要跑很多时间才能搞定。 根据这题只看前k个和后k个。 第一次到s%2*k, 那么第二次则到 (s+s%(2*k-1))%(2*k-1) ,如此递推只需k的时间就可以A了。JosephTime Limit:1000MSMemory Limit:10000KTotal Submissions:43659Accepted:16425DescriptionThe Joseph's problem 阅读全文
posted @ 2013-04-29 14:38 chenhuan001 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 比较基础的约瑟夫环记住约瑟夫环的递推的公式 就行了假设是从0-n-1, 从0开始的第k个人f[1]=0;f[i]=(f[i-1]+k+1)%i (i>1)Eeny Meeny MooTime Limit:1000MSMemory Limit:65536KTotal Submissions:2927Accepted:2013DescriptionSurely you have made the experience that when too many people use the Internet simultaneously, the net becomes very, very sl 阅读全文
posted @ 2013-04-28 21:55 chenhuan001 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 坑爹的,这题还要打表才能过, 10^5组测试数据,不打表就基本的输入输出就要花不少时间了,所以下次要注意如此大的数据量的时候要考虑打表...题意就不说了, 我的解法是求出n个人的需要多少次(cnt)才能将所有人都除去(除了1- (K-1) ), 然后找出比n小的人数中 也恰需要cnt次的人数。 然后这个就是最后一个人可以一开始先把 k个人 的所有情况都存下来, 然后直接调用就行了杀人游戏Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1298A 阅读全文
posted @ 2013-04-28 20:51 chenhuan001 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 此题的关键在于给你的位置的分布, 可以发现是交错的,那么就可以用二分图了。National TreasuresTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 854Accepted Submission(s): 281Problem DescriptionThe great hall of the national museum has been robbed few times recently. Everyone is now worrie 阅读全文
posted @ 2013-04-27 20:43 chenhuan001 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 此题可有对角线都是1的方阵进行 行变换或列变换 得到。 如果这样想就可以知道, 每行只选一个列,要把所有的列全部选完, 而且最后只需进行行变换就可以转变成对角线全为一SwapTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 892Accepted Submission(s): 283Special JudgeProblem DescriptionGiven an N*N matrix with each entry equal to 0 or 1 阅读全文
posted @ 2013-04-27 20:39 chenhuan001 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 第一次写HK, 这个算法的原理和dinic比较类似,都是先bfs求出层次图,然后在层次图上进行dfs搜索增广路。这个算法要注意的几点1. 每次构建层次图时,最大层(dis)为最近的Y中的未覆盖的点2. 每次在层次图中找的时候最多找到dis(最大层).听说可以证明到这个算法的复杂度 为 sqrt(n)*m 。 我没有去证但是对比dinic ,这种算法应该都是会提速的,将无规律的搜索变成有规律的Rain on your ParadeTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 655350/165535 K (Java/Others) T 阅读全文
posted @ 2013-04-25 23:00 chenhuan001 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 简单的背包问题,算是一种多重的吧。解题的关键在于,要控制最后所用的时间最少,所以在程序的最开始应该先将 输入的各种题目 以时间升序排列, 然后就可以保证每次都以时间小的优先选, 这样就可以保证最后相同的吸引值和解题数的情况下所话的时间最少。Happy Programming ContestTime Limit:2 Seconds Memory Limit:65536 KBIn Zhejiang University Programming Contest, a team is called "couple team" if it consists of only two s 阅读全文
posted @ 2013-04-22 10:57 chenhuan001 阅读(354) 评论(0) 推荐(0) 编辑
上一页 1 ··· 40 41 42 43 44 45 46 47 48 ··· 52 下一页