BZOJ4057 [Cerc2012]Kingdoms】的更多相关文章

题意 有一些王国陷入了一系列的经济危机.在很多年以前,他们私底下互相借了许多钱.现在,随着他们的负债被揭发,王国的崩溃不可避免地发生了--现在有n个王国,对于每对王国A和B,A欠B的钱被记为d_AB(我们假设有d_BA=-d_AB成立).如果一个王国入不敷出(即需要支付超过所能获得的钱),它就可能破产.每当一个王国破产,与它相关的所有债务关系都会被去除,无论是正是负.而王国们的破产不是一瞬间完成的,而是第一个王国破产后,接下来可能破产的王国再继续破产,直到剩下的王国经济都是稳定的.不同的结局将取…
状压dp.... 我已开始用递归结果就 TLE 了... 不科学啊...我dp基本上都是用递归的..我只好改成递推 , 刷表法 将全部公司用二进制表示 , 压成一个数 . 0 表示破产 , 1 表示没破产 . dp( S ) 表示 S 状态是否能够达到 , 能为 1 ( true ) , 不能为 0 ( false ) . dp( S ) =  max( dp( S ^ { x } ) , ( S & x == 0 && ∑debt > 0 ) ---------------…
4525: [Cerc2012]Kingdoms 题意 n个国家,两两之间可能存在欠债或者被欠债的关系,一个国家破产:其支出大于收入.问一个国家能否坚持到最后. 思路 很有意思的一道题. dp[s]表示在当前国家存在情况为s,1-存活,0-破产.那么起始为11111....然后枚举一个国家,判断是否可以破产,转移. 最后,扫一遍所有只有1的情况. 代码 #include<cstdio> #include<algorithm> #include<cstring> #inc…
状压DP #include<cstdio> #include<cstring> using namespace std; int F[1200005],A[25][25],stack[25]; int main(){ int T; scanf("%d",&T); while (T--){ int n; scanf("%d",&n); for (int i=0; i<n; i++) for (int j=0; j<n…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1116 1116: Kingdoms Time Limit: 3 Sec  Memory Limit: 64 MBSubmit: 293  Solved: 82[Submit][Status][Web Board] Description A kingdom has n cities numbered 1 to n, and some bidirectional roads connecting…
要快速在一段子序列中判断一个元素是否只出现一次 , 我们可以预处理出每个元素左边和右边最近的相同元素的位置 , 这样就可以 O( 1 ) 判断. 考虑一段序列 [ l , r ] , 假如我们找到了序列中唯一元素的位置 p , 那我们只需检查 [ l , p - 1 ] & [ p + 1 , r ] 是否 non-boring 即可 . 如何检查 序列 [ l , r ] 呢 ? 假如从左往右或者从右往左找 , 最坏情况下是 O( n ) , 总时间复杂度会变成 O( n² ) ; 假如我们从…
4063: [Cerc2012]Darts Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 85  Solved: 53[Submit][Status][Discuss] Description 考虑一个扔飞镖的游戏.板子由十个环组成,半径分别为20, 40, 60, 80, 100, 120, 140, 160, 180和200(单位:mm),均以原点为中心.每次投掷的得分取决于飞镖所击中的位置.如果包含飞镖的最小环(可以在圆上)的半径是20 *…
[BZOJ4061][Cerc2012]Farm and factory(最短路,构造) 题面 BZOJ 然而权限题QwQ. 题解 先求出所有点到达\(1,2\)的最短路,不妨记为\(d_{u,1},d_{u,2}\). 那么假设新点是\(x\),任意一个点\(u\). 那么可以得到几个不等式:\(d_{u,1}\le d_{u,x}+d_{x,1},d_{u,2}\le d_{u,x}+d_{x,2}\).同理还有几个类似的不等式. 而题目限制又要求\(d_{u,x}\)最小, 因此\(d_{…
D - Kingdoms Time Limit:1000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu A kingdom has n cities numbered 1 to n, and some bidirectional roads connecting cities. The capital is always city 1. After a war, all the roads of the kingdom are de…