题目中说:随便输出一组。抽屉原理可以求出取出的数连续的情况。#include #includeusing namespace std;int a[10005],s[10005];int n,start,end,ok = 0;int main(){ while(scanf("%d",&n) !=...
分类:
其他好文 时间:
2014-08-26 19:24:36
阅读次数:
183
POJ 3370 Halloween treats(抽屉原理)...
分类:
其他好文 时间:
2014-08-20 10:34:26
阅读次数:
301
题意 有c个小孩 n个大人万圣节搞活动 当小孩进入第i个大人家里时 这个大人就会给小孩a[i]个糖果 求小孩去哪几个大人家可以保证得到的糖果总数是小孩数c的整数倍 多种方案满足输出任意一种
用s[i]表示前i个打人给糖果数的总和 令s[0]=0 那么s[i]共有n+1种不同值 而s[i]%c最多有c种不同值 题目说了c
这就是抽屉原理了 n个抽屉放大于n个苹果...
分类:
其他好文 时间:
2014-08-19 22:29:55
阅读次数:
262
Description
Every year there is the same problem at Halloween: Each neighbour is only willing to give a certain total number of sweets on that day, no matter how many children call on him, so it ma...
分类:
其他好文 时间:
2014-08-19 22:28:45
阅读次数:
278
这是一道要用抽屉原理的题,我们可以用一个sum数组,记录前 i 个元素之和mod c 的结果,拿第一组数据来说明(a[i]存放糖块)
然后用mod数组存放出现该余数sum[i]时的下标,形式是mod[sum[i]]=i;
即:mod[1]=1,mod[3]=2,mod[2]=3......因为等下写代码的时候是一次对mod判断的,所以后面的mod[1]=4是不会出现的。
mod和sum的作用是:①当出现sum[i]=0时,说明从1到 i 这 i 个元素的和能被c整除,即符合题意;
②当sum[i]...
分类:
其他好文 时间:
2014-08-08 18:19:16
阅读次数:
247
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
POJ 2355 Find a multiple(组合数学-抽屉原理)
题目大意:
有n个数,找出一个方案满足:从中选出任意多的数字使得它们的和对n求余为0
解题思路:
用sum[i]记录前 i 项的和。
(1)如果存在某个sum[i]%n==0 ,那么就已经找到了,就是前i项。
(2)如果不存在,则sum[i]%n的取值范围为1~n-1 那么n项sum必然有 sum[i]%n==sum[j]%n,这时候(sum[j]-sum[i])%n=0,也就是 第i+1项到第j项的和对n求余为0,也满足条件了。...
分类:
其他好文 时间:
2014-07-29 12:50:17
阅读次数:
238
/*引用过来的题意: 给出N个数,问其中是否存在M个数使其满足M个数的和是N的倍数,如果有多组解, 随意输出一组即可。若不存在,输出 0。题解: 首先必须声明的一点是本题是一定是有解的。原理根据抽屉原理: 因为有n个数,对n个数取余,如果余数中没有出现0,根据鸽巢原理,一定有...
分类:
其他好文 时间:
2014-07-25 02:33:34
阅读次数:
200
不懂得详见poj 2356 抽屉原理详解,这题竟然卡精度。。。提交了好几次都WA,改成long long sum[100100] 才对
代码如下:
#include
#include
int flag[100100],a[100100],str[100100];
long long sum[100100];
int main()
{
int n,i,j,t,chi;
whi...
分类:
其他好文 时间:
2014-07-23 13:38:16
阅读次数:
228
题目大意就是先给出一个数N,接着再给出N个数,要你从这N个数中任意选择1个或多个数,使得其和是N的倍数
如果找不到这样的答案 则输出0
答案可能有多个,但智勇任意输出一个解就行。
输出的第一行是选择元素的个数M,接着M行分别是选择的元素的值
刚开始的时候并不同为什么这一题回事抽屉原理,分析后才明白,昨晚后更有体会
实际上此题一定有解,不存在输出0的结果
证明如下...
分类:
其他好文 时间:
2014-07-22 23:52:57
阅读次数:
301