码迷,mamicode.com
首页 >  
搜索关键字:鸽巢原理    ( 90个结果
抽屉原理入门
E - 鸽巢原理入门1 Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Description Every year there is the same problem at Halloween: Each neighbour i...
分类:其他好文   时间:2014-07-29 14:53:58    阅读次数:297
poj2356 Find a multiple(抽屉原理|鸽巢原理)
/*引用过来的题意: 给出N个数,问其中是否存在M个数使其满足M个数的和是N的倍数,如果有多组解, 随意输出一组即可。若不存在,输出 0。题解: 首先必须声明的一点是本题是一定是有解的。原理根据抽屉原理: 因为有n个数,对n个数取余,如果余数中没有出现0,根据鸽巢原理,一定有...
分类:其他好文   时间:2014-07-25 02:33:34    阅读次数:200
poj 2356 Find a multiple 鸽巢原理的简单应用
题目要求任选几个自然数,使得他们的和是n的倍数。 由鸽巢原理如果我们只选连续的数,一定能得到解。 首先预处理前缀和模n下的sum,如果发现sum[i]==sum[j] 那么(sum[j]-sum[i])%n一定为0,直接输出i+1~j就够了。 为什么一定会有解,因为sum从1~n有n个数,而模n下的数只有0~n-1,把n个数放入0~n-1个数里,怎么也会有重复,所以这种构造方法一定没问题。 ...
分类:其他好文   时间:2014-07-08 10:47:19    阅读次数:260
Euler Project 1 -- 鸽巢原理
题目要求 1000 内可以被 3 或者 5 整除的数字之和 可以很简单地这么写: print sum( [ i for i in xrange( 1000 ) if i % 3 == 0 or i % 5 == 0 ] ) 但是对于10^10的数据,要运行很长时间,可以利用一点鸽巢原理 10^10中能被 3 整除的数据和加上能被 5 整除的数据和减去能被 15 整除的数据和即可,求...
分类:其他好文   时间:2014-06-20 11:46:19    阅读次数:249
POJ 3370 Halloween treats 鸽巢原理 解题
Halloween treats 和POJ2356差不多。 其实这样的数列可以有很多,也可以有不连续的,不过利用鸽巢原理就是方便找到了连续的数列,而且有这样的数列也必定可以找到。 #include #include #include int main() { int c, n; while (scanf("%d %d", &c, &n) && c) { int *nei...
分类:其他好文   时间:2014-06-10 06:02:58    阅读次数:293
HDU3183(RMQ+鸽巢原理)
题目的意思是对于一个n位数,删除m个位后,得到的最小数是什么,比如12345 2,删除两个位,得到最小的就是123.实际上这题目解法很多,好像有贪心,线段树,RMQ等,因为我最近在学习RMQ,所以就用RMQ了。 这题目用了一个鸽巢原理,得到的m-n位数的第一位,必然出现在1~m-n+1,这个由鸽巢原理就十分明显了(如果1~n-(m-n)+1都没有的话,剩下的m-n-1个位是不可能凑出m-n个位的...
分类:其他好文   时间:2014-06-09 23:40:43    阅读次数:315
POJ 2356 find multiple 鸽巢原理
POJ 2356 find multiple 题意: 输入一个正整数 N ,接着输入 N 和 正整数 nums[1], nums[2], ... ... , nums[N], 试问可否从这 N 个正整数中找出一组连续的数,它们的和能被 N 整除。 思路: 鸽巢原理,构造一个序列 sums[1] = nums[1], sums[2] = nums[1] + nums[2], ... ....
分类:其他好文   时间:2014-06-08 15:12:34    阅读次数:213
HDU4836 The Query on the Tree(树状数组&&LCA)
由于智力的问题,百度之星完全lu不动。。开场看第一题根据题目给的条件我觉得一定是可以构造出来的,题目给的意思颇有鸽巢原理的感觉,于是觉得开场第一题应该就是智力构造题了,想了半个小时,发现完全想不动,于是只能放弃了去想后面的题。然后看第二题的数据结构,树上的询问,支持点修改,询问子树和,还有换根,然后...
分类:其他好文   时间:2014-06-02 16:41:08    阅读次数:257
鸽巢原理-poj3370
#include int main(int argc, char *argv[]){ int c = -1, n = -1; while (true) { scanf("%d%d",&c,&n); int arr[n],sum[n],b[n]; if (c + n == 0) { ...
分类:其他好文   时间:2014-05-14 23:11:50    阅读次数:391
鸽巢原理
鸽巢原理: n+1个鸽子放入n个窝中,至少有一个窝含有两只鸽子 Find a multipleTime Limit:1000MSMemory Limit:65536KTotal Submissions:5590Accepted:2434Special JudgeDes...
分类:其他好文   时间:2014-05-14 23:00:02    阅读次数:375
90条   上一页 1 ... 7 8 9
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!