题目大意:给定一张带权无向图,每条边有一个颜色(黑色/白色),求一棵生成树满足有needneed条白色边且权值和最小
二分一个xx,然后将所有白边权值加上xx,跑两遍Kruskal,第一遍白边排在前面,第二遍黑边排在前面,这样可以求出当前白边数量的最大最小值
如果needneed在最大最小值之间那么直接输出结果,否则如果小于最小值就增大xx,大于最大值就减小xx
然而我并不会证明正确性。。。#...
分类:
其他好文 时间:
2015-08-25 19:42:26
阅读次数:
153
1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 8 using namespace std; 9 10 double PI=acos(-1.0);11 double arr[10010];12 i...
分类:
其他好文 时间:
2015-08-21 20:53:42
阅读次数:
129
大致题意:有一些商店和一些居民在一排上,某人要从起点开始对所有居民发放1kg糖果,每个商店可以可以且仅可以买一次1kg糖果,每向前或向后走以单位需要1时间单位,求在t时间内发完所以的居民最少需要自身带多少kg糖果
思路:这种题,明显就是二分,二分答案,然后从边界开始判可行,这题的可行还是有点难判,首先糖果手中充足,遇到一个居民就发放1kg,当糖果不充足的时候,只能有两种决策,直接跑到尽头...
分类:
其他好文 时间:
2015-08-21 13:42:07
阅读次数:
207
题目链接:714 - Copying Books解题思路具体处理方法见代码/************************************************************** Problem: User: youmi Language: C++ Re...
分类:
其他好文 时间:
2015-08-16 15:09:04
阅读次数:
102
传送门
大意:给出NN个数,对于存有每两个数的差值的序列求中位数,如果这个序列有偶数个元素,就取中间偏小的作为中位数。因为N<=100000N <= 100000,所以想要求出每一个差值是不可行的,我们很容易想到二分答案。 在二分答案时我们会进行判定,求出小于等于枚举值的个数,我看其他人的判定似乎都是O(NlogN)O(N\log N) 的,我在这里就给出一个O(N)O(N)的判定方法。首先同样将...
分类:
其他好文 时间:
2015-08-15 01:38:12
阅读次数:
152
题目pdf:http://acm.bnu.edu.cn/v3/external/124/12486.pdf
大致题意:求第n个不包含"4"和"13"为子串的数是多少 , n
思路:就是一般的数位DP,二分答案,对答案的数求数位DP算出此数以内有多少个满足条件的数
但是....居然答案爆long long,要用unsigned long long 才能过,就这个坑点
// ...
分类:
其他好文 时间:
2015-08-15 01:34:31
阅读次数:
135
二分答案mid,将差距先都调到mid以内。首先从左往右扫,a[i]=min(a[i],a[i-1]+mid)。然后从右往左扫,a[i]=min(a[i],a[i+1]+mid)。枚举要变为0的位置,求出L,R使得:a[L]>(i-L)mida[R]>(R-i)mid此时只需要把[L,i]和[i,R]...
分类:
其他好文 时间:
2015-08-14 06:26:44
阅读次数:
111
题目大意:
给你两个整数N和K,找到第k个与N互素的数(互素的数从小到大排列),其中
(1 <= m <= 1000000,1 <= K <= 100000000 )。
解题思路:
K很大,直接从小到大枚举找出不现实,只能二分答案。二分枚举[1,INF]范围内所有的数x,
找到1~x范围内与N互素的数个数,如果等于K,则就是结果。
然后考虑1~x范围内与N互素的数个数 = x - 1~x范围内与N不互素的数个数
1~x范围内与N不互素的数个数用简单的容斥定理来求即可。...
分类:
移动开发 时间:
2015-08-12 19:27:21
阅读次数:
136
二分答案,转化成判定所有科学家能否在lim时间内走到安全的地方考虑网络流,对于每个非叶子节点,S向它连边,容量为该点科学家的人数对于每个叶子节点,向T连边,容量为该点的容量对于每个非叶子节点x,枚举它的所有祖先,对于一个祖先y,向y子树中所有与x距离不超过lim的点连边,容量为inf由于数据随机,所...
分类:
其他好文 时间:
2015-08-09 18:29:42
阅读次数:
112
Yangyang loves AC题意: 给出Yangyang N天中每天达到happy 的最大值,他会从M个ACMer中得到happy值;
求他能最多达到happy的天数。
分析: 如果直接贪心显然有问题,所以我们需要换个姿势。
二分答案+贪心:
二分得到最多happy 天数,然后贪心,每次从M个ACMer中选最大的happy值,放到容量最大的盒子里,用优先队列每次维护最大容量的盒子。
算...
分类:
其他好文 时间:
2015-08-09 12:40:51
阅读次数:
158