POJ 2356:题目大意:给定n个数,希望在这n个数中找到一些数的和是n的倍数,输出任意一种数的序列,找不到则输出0这里首先要确定这道题的解是必然存在的利用一个 sum[i]保存前 i 个数的和对n的取模sum[0] = 0;那么sum[0] ~ sum[n]有n+1个数据,这些数据的范围都是 0...
分类:
其他好文 时间:
2015-01-23 15:53:21
阅读次数:
194
鸽巢原理,又名狄利克雷抽屉原理、鸽笼原理。 其中一种简单的表述法为: 若有n个笼子和n+1只鸽子,所有的鸽子都被关在鸽笼里,那么至少有一个笼子有至少2只鸽子。 另一种为: 若有n个笼子和kn+1只鸽子,所有的鸽子...
分类:
其他好文 时间:
2014-12-31 18:41:12
阅读次数:
246
和上题差不多一样的搞法。#include#include#include#include#include#includeusing namespace std;const int maxn = 111111;int a[maxn]; int b[maxn];int vis[maxn];int mai...
分类:
其他好文 时间:
2014-11-04 09:16:23
阅读次数:
165
小数据直接暴力,大数据查找0-mod — 1,mod — 2*mod-1,2*mod — 3*mod-1.....因为 n%mod 的范围#include#include#include#include#includeusing namespace std;typedef long long L.....
分类:
其他好文 时间:
2014-11-04 09:11:43
阅读次数:
152
一定存在连续的k个数,使得他们的和能被n整除。设a[i]为前缀和a[1]%n ,a[2]%n,...,a[n]%n的值的范围#include#include#include#include#includeusing namespace std;typedef long long LL;int m.....
分类:
其他好文 时间:
2014-11-04 09:10:18
阅读次数:
141
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-10-22 20:24:03
阅读次数:
307
http://poj.org/problem?id=2356
从n个数里面取出一些数,这些数的和是n的倍数。并输出这些数。
先预处理出前n个数的和用sum[i]表示前i个数的和。若某个sum[i]是n的倍数,直接输出前i个数即可。
否则说明n个数中对n取余的结果有n-1种,即余数为(1~n-1),根据鸽巢原理知必定至少存在两个sum[i]与sum[j]对n取余的结果相等。那么...
分类:
其他好文 时间:
2014-08-12 22:11:46
阅读次数:
208
题目来源:POJ 2356 Find a multiple
题意:n个数 选出任意个数 使得这些数的和是n的倍数
思路:肯定有解 并且解是连续的一段数
证明:
假设有m个数 a1,a2,a3...am s1 s2 s3...sm为前缀和 s1 = a1 s2 = a1+a2 s3 = a1+a2+a3... sm = a1+a2+a3+...+am
1.如果某个前缀和si%m =...
分类:
其他好文 时间:
2014-08-02 21:01:54
阅读次数:
312