N的倍数 51Nod - 1103 (抽屉原理)
Input 第1行:1个数N,N为数组的长度,同时也是要求的倍数。(2 <= N <= 50000)
第2 - N + 1行:数组A的元素。(0 < Ai <= 10^9) Output 如果没有符合条件的组合,输出No Solution。
第1行:1个数S表示你所选择的数的数量。
第2 - S + 1行:每行1个数,对应你所选择的数。 Sample Input
8 2 5 6 3 18 7 11 19
Sample Output
2 2 6
1.前缀和模N==0的话 就是N的倍数
2.如果出现两个前缀和一样的话 比如说在第三个是7 第五个也是7 这说明中间这些数的加和是N的倍数
代码:
#include<bits/stdc++.h>
using namespace std;
int n,a[50010],sum[50010],mp[50010];
int main()
{scanf("%d",&n);for(int i = 1;i<=n;i++){scanf("%d",&a[i]);sum[i] = (sum[i-1]+a[i])%n;if(sum[i]==0){printf("%d\n",i);for(int j = 1;j<=i;j++)printf("%d\n",a[j]); return 0;//这边表示的是中途有人 } if(mp[sum[i]]!=0){printf("%d\n",i-mp[sum[i]]);for(int j = mp[sum[i]]+1;j<=i;j++)printf("%d\n",a[j]);return 0;}mp[sum[i]] = i;//表示这个什么出现了出现在i这个位置上 get} return 0;
}
N的倍数 51Nod - 1103 (抽屉原理)相关推荐
- 51nod 1103 N的倍数 思路:抽屉原理+前缀和
题目: 这是一道很神奇的题目,做法非常巧妙.巧妙在题目要求n个数字,而且正好要求和为n的倍数. 思路:用sum[i]表示前i个数字的和%n.得到sum[ 1-N ]共N个数字. N个数字对N取模,每个 ...
- 鸽巢原理(抽屉原理)
鸽巢原理和抽屉原理是同义词,已合并. 抽屉原理 百科名片 抽屉原理 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面放两个苹果.这一现象就是我们所说的" ...
- 抽屉原理(又名:鸽笼原理)
百度真是太强大了,百度百科真的好爱你-- 抽屉原理 百科名片 抽屉原理 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面放两个苹果.这一现象就是我们所说的&qu ...
- 【51Nod - 1103】N的倍数 (思维,鸽巢原理也叫抽屉定理,求倍数问题取模)
题干: 一个长度为N的数组A,从A中选出若干个数,使得这些数的和是N的倍数. 例如:N = 8,数组A包括:2 5 6 3 18 7 11 19,可以选2 6,因为2 + 6 = 8,是8的倍数. I ...
- N的倍数(抽屉原理)
一个长度为N的数组A,从A中选出若干个数,使得这些数的和是N的倍数. 例如:N = 8,数组A包括:2 5 6 3 18 7 11 19,可以选2 6,因为2 + 6 = 8,是8的倍数. Input ...
- poj2356(抽屉原理)
题意:从输入的N个元素中找出是N的倍数的元素并且输出: 因为这个要求的是连续的数之和,先用sum数组求和:sum[1],sum[1]+sum[2],--,sum[1]+sum[2]+--+sum[n] ...
- 鸽巢原理(抽屉原理)的详解
抽屉原理 百科名片 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面放两个苹果.这一现象就是我们所说的"抽屉原理". 抽屉原理的一般含义为: ...
- 【EOJ Monthly 2019.02 - B】解题(思维,抽屉原理,暴力,模运算,优化,tricks)
题干: 单测试点时限: 2.0 秒 内存限制: 1024 MB "我把房门上锁,并非为了不让她进去,而是为了防止自己逃到她身边". 她又被数学难住了.QQ 小方当然是不会对女生说& ...
- 抽屉原理解释及简单举例
解释 桌上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎样放,我们会发现至少会有一个抽屉里面至少放两个苹果.这一现象就是我们所说的"抽屉原理". 抽屉原理的一般含义为:" ...
- (鸽巢原理,又称抽屉原理)NYOJ 417 死神来了
死神来了 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 有一天,王小子在遨游世界时,遇到了一场自然灾害.一个人孤独的在一个岛上,没有吃的没有喝的.在他饥寒交迫将要死亡时 ...
最新文章
- java用爬虫爬一个页面_使用Java写一个简单爬虫爬取单页面
- 死链对网站优化排名有哪些不利作用?
- python编程从入门到精通pdf-跟老齐学Python:从入门到精通 完整版PDF[7MB]
- Linux /etc/inittab 文件的解读
- 修改MySQL数据文件默认路径
- 变频器输出功率_变频器的输出功率该如何选择?
- MYSQL-用户操作
- ubuntu16.04安装OVS(Open vSwitch)
- consul 1.2 支持service mesh
- python list append tuple_Python之list、tuple、dict、set
- Delphi 10.X 不用联接真机或模拟器编译出APK
- linux的jar命令不能使用,经常使用的linux下jar包管理命令
- 10 Love Quotes Touch Your Soul at First Sight
- PSP3000/2000V3用5.03-GEN-C系统安装使用教程
- Android 音频系统:从 AudioTrack 到 AudioFlinger
- 自行车线控前叉换线之——鸡米螺丝
- 数据库驱动和JDBC、DBCP-C3P0连接池
- 2022android自定义文本路径选择器java教程
- 第三方移动支付类产品竞品分析:支付宝VS微信支付VS云闪付
- 1006-奇怪的分式