NYOJ-备用2350 彩排(位运算)
题目:
2350: 彩排
时间限制: 1 秒 内存限制: 2 MB
提交: 179 解决: 54
提交 状态
题目描述
输入
多组测试数据;
输入一个n,k;
代表有n个人,每一排站k人;
接下来输入n个数字代表学院编号,a1,a2...an-1,an
ai代表我来自的学院,数字相同表示来自相同的学院。数字不同代表来自不同的学院。
输出
输出一个整数,代表人数不满足条件的学院编号;
样例输入
3 2 1 1 3 10 3 3 9 3 1 1 3 1 3 9 9
样例输出
3 3
提示
0<n,k≤1000000; 0<ai≤1e9; 请注意内存限制 (数据保证合法)
来源
Practice-Round#2
思路:
这个题,统计每个学校的人数,输出不能被K整除的那个,简单说 统计数字出现次数,输出不能被K整除的数字。用二进制统计一下。将每个数转化为二进制,用一个数组统计二进制每位1出现的次数,按位统计1的个数。我们可以假设,刚好能够被K整除 ,则每一个二进制位的 1 的个数都能够被K整除,若加上一个任意的数字则,则它会使得他二进制位1所在的不能够被K整除。所以只需要转化为二进制统计每个位置上1出现的次数,再对K取模
代码:
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <string>
#include <iostream>
#include <stack>
#include <queue>
#include <vector>
#include <algorithm>
#define mem(a,b) memset(a,b,sizeof(a))
#define N 100000+10
#define M 10000+20
#define MOD 1000000000+7
#define inf 0x3f3f3f3f
#define ll long long
using namespace std;
int a[32];
int main()
{int n,m,x;while(~scanf("%d%d",&n,&m)){mem(a,0);int t=n;while(t--){scanf("%d",&x);int i=0;while(x){a[i]=a[i]+x%2;x/=2;i++;}}int ans=0;for(int i=0; i<32; i++)if(a[i]%m)ans=(ans|(1<<i));printf("%d\n",ans);}return 0;
}
NYOJ-备用2350 彩排(位运算)相关推荐
- LeetCode 1286. 字母组合迭代器(回溯/位运算)
文章目录 1. 题目 2. 解题 2.1 回溯 2.2 位运算 1. 题目 请你设计一个迭代器类,包括以下内容: 一个构造函数,输入参数包括:一个 有序且字符唯一 的字符串 characters(该字 ...
- python中不同进制的整数之间可以直接运算_Python 进制转换、位运算
一.进制转换 编程用十进制,十进制转换为二进制.八进制.十六进制 In [135]: bin(23) Out[135]: '0b10111' In [136]: oct(23) Out[136]: ' ...
- python isodd()判断奇偶_位运算(1的个数;2.判断奇偶)
1. 1的个数 int NumberOf1(intn){int count = 0;while(n) {++count; n=(n-1)&n; } } 同样一个问题,位运算可以提高程序的运行效 ...
- python 整数逆位运算_python训练营:注释、运算符、数据类型与位运算
天学习的内容整理成脑图如下,其中带☆的是需要重点掌握的模糊知识点,需要加强训练和记忆. 二.具体学习内容 2.1 注释 2.1.1 多行注释 2.1.2 长字符串注释 2.2 运算符 2.2.1 算术 ...
- 洛谷P1896 [SCOI2005]互不侵犯 状压dp+位运算
题目链接:https://www.luogu.org/problem/P1896 题意:n*n的格子填数,每个数填放位置的周围(8个)不能有其他的数 n<=9 ,矩形状压 f[i][j][s], ...
- mysql 使用位运算
如果你不知道什么是位运算的话, 那么请你先去看看基础的C语言教程吧. 与运算 a & b , 或运算 a | b , 异或运算 a ^ b , 或者 你也可以将 与运算理解为 + 法 例 ...
- 位运算+取某一位+java_Java位运算小节
2019新春支付宝红包技术大揭秘在线峰会将于03-07日开始,点击这里报名届时即可参与大牛互动. 位运算表达式由操作数和位运算符组成,实现对整数类型的二进制数进行位运算.位运算符可以分为逻辑运算符(包 ...
- 进制转换 位运算(包括补码、原码、反码、~0等一些零碎东西一次说清)
我发现网上关于标题上的内容介绍的都很零碎,因此为了方便查找.也为了本人对这一部分的充分理解,就想着写一篇这样的博客(我分成了几个部分,以便查找): 一.进制转换 让我们先来看看各个进制的定义: 十进制 ...
- (转)C语言位运算详解
地址:http://www.cnblogs.com/911/archive/2008/05/20/1203477.html C语言位运算详解 作者:911 说明:本文参考了http://www2.ts ...
最新文章
- 韩宇:如何准备天池深度学习比赛?
- 以下选项不是python文件读操作的是-以下选项中,不是Python中文件操作的相关函数是()...
- 玩转OpenVswitch 简介
- 有关子数组最大累加和的算法小结
- ubuntu9.10配置编译xawtv-3.95
- scrapy爬虫框架的分类下载和异步下载到数据库
- tar: bzip2:无法 exec: 没有那个文件或目录
- 使用Introspector(Java内省机制)实现Map转换为JavaBean
- 聚簇索引与非聚簇索引的区别以及SQL Server查询优化技术
- redhat 7 防火墙配置
- Jupyter notebook基础教程(启动,汉化,操作)
- Linux常用知识与命令
- ie/ff动态的添加属性、事件
- 家用nas的过去现在和未来--2008n年
- 8种排序算法(Java实现)
- ASC19 初赛要求自翻译
- hdu5773 The All-purpose Zero(LIS变形)
- 安卓逆向学习 之 KGB Messenger的writeup(1)
- el-upload上传图片,限制上传数量,超过最大数量则不展示上传组件,可点击删除
- 加速下载ardupilot工程
热门文章
- Dreambox的enigma和enigma2,一些想法。
- activemq--可持久化机制之AMQ
- Oracle之where之后的case when执行不同的条件
- cad连接不同线段的端点_【CAD图形】】为什么CAD连续的图形无法连接成完整的多段线...
- 【2019.07.23 Python每日一题】答案—— 企业发放的奖金根据利润提成
- 人事面试题目之——人事65问
- Python——用爬虫下载妹子图
- Linux上subversion的安装和使用
- react axios和ajax网络请求拦截(session过期跳转登录页)
- linux hd4000显卡驱动,如何在Linux上为Intel HD 4000获取OpenGL 4