·1415 words·3 mins
poj 3274 题目链接
题意:给出n个数和k,每个数不超过k位二进制。现在问最长的一段区间,满足该区间中所有数相加,k个位置上的数相等。
思路:k个位置上的数都相等的话…那这个和应该是(k«1)-1的整数倍…
·434 words·1 min
http://poj.org/problem?id=2356
题意:有 n 个数,从中选取若干个(1..n),和能被 n 整除。问是否有解,无解输出 0,有解的话,输出个数以及选择的 a[i](不是 i)。
由抽屉原理可知一定有解: 做一个带模的前缀和 sum[i]=(sum[i-1]+a[i])%n n个数,sum[i]最多有n种。 如果某个sum[i]为0,那么表示从1到i的和能被n整除。 如果所有的 sum[i] 不为 0,那么一共有 n 个 sum[i]、n-1 个值(1..n-1),一定有 sum[i] == sum[j](i <= j)。 那么a[i]到a[j]的和一定能被n整除。
·396 words·1 min
http://acm.hdu.edu.cn/showproblem.php?pid=1205 题意:有n种糖果,第i种糖果有a[i]个,相邻两次不能吃一样的糖果,问能否有办法吃完所有糖果… 思路:如果第i种糖果有k个的话,那么其他所有种类的糖果之和至少有k-1个,才可能吃完。复杂度O(n) 看到有人说是抽屉原理…..大概。。。?不过不太明显。。直接想就好吧
·409 words·1 min
背包还是理解的不够透彻..
因为每次都是用那个一维形式的.
这道题的做法类似01背包.
此外还可以有一个优化…
当n>m的时候...根绝抽屉原理..一定为yes..
·837 words·2 mins
昨天那道签到的数学题没搞出来不开心.
是时候刷一波数学了
这题题意是说,从n个数中任选m个,使得m个的和为c的倍数.
如果有解,输出选的数的下标,否则输出无解字符串.
抽屉原理的原始描述是,如果有n+1个物品,有n个抽屉,那么至少有一个抽屉有2个物品.
·653 words·2 mins
算是签到帖,竟然卡住了。
我数学还是太差了。。
然后去找题解。。竟然看不懂!
我数学真的有这么差嘛。。。
然后多亏了队友 @zcy 妹子的讲解。。
其实很好理解啊。。。
不过数到底还是数学太差了==