![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心
Lazines_by
好吧,我要工作了
展开
-
codeforces 789C
题解: 首先计算数组整体的gcd,如果大于1,那么输出"YES"和"0" 接下来,考虑两个数x,y 令d=gcd(x-y,x+y),那么即存在p,q(gcd(p,q)=1)使得 x-y=pd , x+y=qd 那么有(p+q)d=2x,(q-p)d=2y,也就是说d|2x,d|2y gcd(x-y,x+y) | gcd(2x,2y)=2gcd(x,y) 说明原创 2017-05-23 19:36:48 · 674 阅读 · 0 评论 -
798D的二维贪心与C的思维
http://codeforces.com/contest/798/problem/D 题目大意: 给你两个数组长度为n的数组a,b,让你从中选择n/2+1个下表,使得对于每个数组,选择的元素之和的二倍大于整个数组的元素之和。 解题思路: 首先,对于题目要求的选择元素之和两倍大与所有元素之和,我们可以转化为选择元素之和大于剩下的。然后原创 2017-04-23 10:41:40 · 379 阅读 · 0 评论 -
poj 3279(翻转问题贪心)
翻转问题一般是从前面开始贪心,如果是一维的话直接从前面往后贪心,如果是二维的话,就得枚举第一行的状态,然后从第一行往下贪心。 这个题就是二维的开关问题,需要枚举第一行的状态,复杂度为2^n,然后往后遍历贪心。总复杂度为2^n * n*m,因为n PS :要特判n == 1,把他当作一维的来做 Code: #include #include #include #原创 2017-07-14 08:49:03 · 291 阅读 · 0 评论