摘要: 1179 最大的最大公约数 给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5。 给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间 阅读全文
posted @ 2017-10-11 21:09 拿叉插猹哈 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 对于三个点 a b c 有两个边权 x y 有结论 min( (a+b)/x , (b+c)/y ) < (a+b+c)/(x+y) 由结论推广出去 三个点一定比四个点优 四个点一定比五个点优 ............... 我们可以得到结论 由两个点和一个边权得到的值最优 1 #include < 阅读全文
posted @ 2017-10-11 20:43 拿叉插猹哈 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 水题 最后一个非零数减1即可 1 #include <cstdio> 2 #include <cctype> 3 4 const int MAXN=110; 5 6 int n,cnt; 7 8 int hh() { 9 freopen("bit.in","r",stdin); 10 freopen 阅读全文
posted @ 2017-10-11 15:30 拿叉插猹哈 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 1225 余数之和 F(n) = (n % 1) + (n % 2) + (n % 3) + ...... (n % n)。其中%表示Mod,也就是余数。 例如F(6) = 6 % 1 + 6 % 2 + 6 % 3 + 6 % 4 + 6 % 5 + 6 % 6 = 0 + 0 + 0 + 2 + 阅读全文
posted @ 2017-10-11 15:25 拿叉插猹哈 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 用到了容斥原理,加上1个数的个数,减去两两相交的个数,加上三三相交 的个数,减去四四相交的个数。。。。 3 想出正解,结果蜜汁20.。。。。 4 */ 5 #include<iostream> 6 #include<algorithm> 7 #include<cstdio> 8 #in 阅读全文
posted @ 2017-10-11 08:05 拿叉插猹哈 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 sort排序 漏了一个条件只有70 我真是 zz 3 对于一个合法的序列 拿走一个数插入数列中 4 造成的影响就是一些数向前移动 还有数向后移动 5 不管怎么动 向后移动或向前移动的数一定只有一个 6 后者都不动 7 */ 8 #include <algorithm> 9 #inclu 阅读全文
posted @ 2017-10-11 08:02 拿叉插猹哈 阅读(127) 评论(2) 推荐(0) 编辑
摘要: 1 /* 2 首先我们知道 2的连续的整数次幂可以构成连续的一段区间 3 例如 1 2 4 可以用来表示 1-7 4 如果想要表示8的话 第四个数只能为8 如果大于8 那么8则无法表示 5 6 本题同理 我们假设 前k个数可以表示 1-sum 则sum为前k个数的前缀和 7 如果第k+1个数大于su 阅读全文
posted @ 2017-10-11 07:59 拿叉插猹哈 阅读(266) 评论(33) 推荐(1) 编辑
摘要: 1 /* 2 单调队列 3 从左向右 每个点向右找一最近的且比他大, 4 从右往左枚举过来 每个点 向左找最近的且比他大 5 */ 6 #include <cmath> 7 #include <cstdio> 8 #include <cstdlib> 9 #include <iostream> 10 阅读全文
posted @ 2017-10-11 07:54 拿叉插猹哈 阅读(112) 评论(0) 推荐(0) 编辑