摘要: 题目描述里的非主流配图…这道题做法和田忌赛马差不多,先把自己和对手都排个序,只要按照下面的流程走就行了: 1.尽量用自己最优的干掉对方最优的 ans+=2 2.尽量用自己最矬的干掉对方最矬的 ans+=2 3.用自己最矬的一个干掉对方最优的 ans+=(两者是否相同)? 1:0而自己最坏的情况,只要用对手最优的情况反着来一次。 1 /************************************************************** 2 Problem: 1034 3 User: zhuohan123 4 Language: C++ 5 ... 阅读全文
posted @ 2013-08-10 18:48 zhuohan123 阅读(390) 评论(0) 推荐(0)
摘要: 这题标解是改一下匈牙利算法,显然,像我这种从不用匈牙利的人,会找个办法用网络流…具体做法是这样,二分最后的答案ans,然后对前ans个问题建图跑网络流,看最大流能不能到ans。 1 /************************************************************** 2 Problem: 1191 3 User: zhuohan123 4 Language: C++ 5 Result: Accepted 6 Time:64 ms 7 Memory:3128 kb 8 ***********... 阅读全文
posted @ 2013-08-10 16:14 zhuohan123 阅读(400) 评论(0) 推荐(0)
摘要: 规律题,这规律无力吐槽了… 1 /************************************************************** 2 Problem: 1432 3 User: zhuohan123 4 Language: C++ 5 Result: Accepted 6 Time:0 ms 7 Memory:804 kb 8 ****************************************************************/ 9 10 #include 11 using namesp... 阅读全文
posted @ 2013-08-07 23:36 zhuohan123 阅读(635) 评论(0) 推荐(0)
摘要: 这题乍看很吓人,其实就是一个贪心。每次取最近的两个点所在的块合并,直到只剩下k块,输出答案。 1 /************************************************************** 2 Problem: 1821 3 User: zhuohan123 4 Language: C++ 5 Result: Accepted 6 Time:136 ms 7 Memory:18492 kb 8 ***********************************************************... 阅读全文
posted @ 2013-08-04 23:34 zhuohan123 阅读(349) 评论(0) 推荐(0)
摘要: 呼~终于是过了这道题了,开始伟大的计算几何!这道题做法不是很难想到吧,输入的三个合金的比例,因为三者之和等于1,所以只需任取两个即可确定第三个(样例还有错我去!)。我们将每种合金的两个参数看做平面上的点,那么两种合金互相混合可以得到的合金的成分必然是在以这两个点为端点的线段上。而三种及以上种合金混合,得到的合金的成分必然是在所有合金所形成的凸包上。那么,这道题目就可抽象成这样:所取的合金集合的凸包要完全“包住”客户所需合金的集合的凸包。又由于n,m都小于等于500,所以我们可以采取暴力的O(n3)的算法:直接枚举从合金i到合金j的向量ij,若所有点均在ij的左边,那么在一张有向图G中由i向j连 阅读全文
posted @ 2013-08-04 22:52 zhuohan123 阅读(1114) 评论(0) 推荐(0)