1832: 贪吃的松鼠

Time Limit: 3 Sec  Memory Limit:
2 MB

Submit: 43  Solved: 7



SubmitStatusWeb
Board

Description

冬天到了,n只松鼠决定一起采集一波坚果过冬,可是在松鼠老大清点的时候,发现少了一些食物,于是召开松鼠大会,知道是有一只小松鼠偷吃了一部分食物!可是他们只知道每一个松鼠运了m个,但是某一个只松鼠运了k个,请找出这个松鼠!(本题时限3s  限制内存2M)

Input

输入有多组数据,每组第一行包含三个数n,m,k(n<=100000,1<m<=9,k<m)。

然后输入m*(n-1)+k个数,第i个数表示运送第i个坚果的松鼠编号,编号范围在2^30以内

Output

输出这个松鼠的编号

Sample Input

3 3 2

1 2 1 2 1 2 3

3

Sample Output

3

HINT

Source

刚开始用数组模拟,唉,真傻,果断爆了,后来想用set,还是错,只有位运算了,其实仔细想想,把每个数转化为二进制,然后开始一个一个加,但是这不是普通的二进制运算,1111+1111=2222,2222+1111=3333,如果一个数出现m次,那么它对应位上应该是m的倍数,就比如1111出现三次,那么就会有3333,即使有别的数会影响到这个数,也没神魔关系,因为如果这个数出现m次,当前位仍是m的倍数,如果不是的话,那就找到了出现k次的数对应的二进制位,ans加上对应的数,最后得到这个数,位运算真是挺巧妙的

#include<stdio.h>
#include<string.h>
int num[50];
int main()
{
int n,m,k;
while(scanf("%d%d%d",&n,&m,&k)!=EOF)
{
int t;
memset(num,0,sizeof(num));
for(int i=0;i<m*(n-1)+k;i++)
{
scanf("%d",&t);
for(int j=0;j<31;j++)//二进制转换
{
num[j]+=t%2;
t/=2;
}
}
long long ans=0;
for(int i=0;i<31;i++)
{
if(num[i]%m==0) continue;
else
ans+=1<<i;
}
printf("%lld\n",ans);
}
return 0;
}

zzulioj--1832--贪吃的松鼠(位运算好题)的更多相关文章

  1. 蓝桥杯---汉字取首字母(位运算 & 水题)

    确实题目虽然有点水,但是开始的时候好像还真的没有想到怎么提取出这个编号一不小心感觉可以可以用unsigned char 这种类型,直接转为16进制,但是之后发现虽然第一次在codeblock中还行,但 ...

  2. 【洛谷4424】[HNOI/AHOI2018] 寻宝游戏(位运算思维题)

    点此看题面 大致题意: 给你\(n\)个\(m\)位二进制数.每组询问给你一个\(m\)位二进制数,要求你从\(0\)开始,依次对于这\(n\)个数进行\(and\)或\(or\)操作,问有多少种方案 ...

  3. 【BZOJ4300】绝世好题(位运算水题)

    点此看题面 大致题意: 给你一个序列\(a\),让你求出最长的一个子序列\(b\)满足\(b_i\&b_{i-1}!=0\). 位运算+\(DP\) 考虑设\(f_i\)表示以第\(i\)个数 ...

  4. zoj--3870--Team Formation(位运算好题)

    Team Formation Time Limit: 3000MS   Memory Limit: 131072KB   64bit IO Format: %lld & %llu Submit ...

  5. CodeForces 165E Compatible Numbers(位运算 + 好题)

    wo integers x and y are compatible, if the result of their bitwise "AND" equals zero, that ...

  6. POJ 2443:Set Operation 经典位运算好题

    Set Operation Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 2965   Accepted: 1196 Des ...

  7. [poj2777] Count Color (线段树 + 位运算) (水题)

    发现自己越来越傻逼了.一道傻逼题搞了一晚上一直超时,凭啥子就我不能过??? 然后发现cin没关stdio同步... Description Chosen Problem Solving and Pro ...

  8. hihoCoder 1513 : 小Hi的烦恼 位运算好题

    思路:考虑第i个同学,第一门课排名比他靠前的同学的集合是S1,第二门课是S2...第五门课是S5,很明显比这个同学每门课程都优秀的同学就是S1&S2&S3&S4&S5, ...

  9. P3613 睡觉困难综合征 LCT+贪心+位运算

    \(\color{#0066ff}{ 题目描述 }\) 由乃这个问题越想越迷糊,已经达到了废寝忘食的地步.结果她发现--晚上睡不着了!只能把自己的一个神经元(我们可以抽象成一个树形结构)拿出来,交给D ...

随机推荐

  1. string 简单实现

    namespace ss{ class string { friend ostream& operator <<(ostream&, const string&); ...

  2. spring RestTemplate 实例(NameValuePair)

    第一种: public List<NameValuePair> getThirdsysPermissionRest(String url,ThirdsysFuncpDTO thirdsys ...

  3. hibernate配置数据库连接池三种用法

    三种连接都是以连接MySQl为例. <!-- JDBC驱动程序 --> <property name="connection.driver_class">o ...

  4. 为什么不能用memcached存储Session?

    Memcached创建者Dormando非常早就写过两篇文章[1][2].告诫开发者不要用memcached存储Session. 他在第一篇文章中给出的理由大致是说,假设用memcached存储Ses ...

  5. [Codeforces 911F] Tree Destruction 解题报告(贪心)

    题目链接: http://codeforces.com/contest/911/problem/F 题目大意: 给你一棵树,每次挑选这棵树的两个度数为1的点,加上他们之间的边数(距离),然后将其中一个 ...

  6. Mysql实战45讲 06讲全局锁和表锁:给表加个字段怎么有这么多阻碍 极客时间 读书笔记

    Mysql实战45讲 极客时间 读书笔记 Mysql实战45讲 极客时间 读书笔记 笔记体会: 根据加锁范围:MySQL里面的锁可以分为:全局锁.表级锁.行级锁 一.全局锁:对整个数据库实例加锁.My ...

  7. 《汇编语言(第三版)》pushf 和 popf 指令,以及标志寄存器在 Debug 中的表示

    pushf 和 popf pushf 的功能是将标志寄存器的值压栈,而 popf 是从栈中弹出数据,输入标志寄存器. pushf 和 popf,为直接访问寄存器提供了方法. 格式 pushf popf ...

  8. 压缩图片C#算法

    转载自 http://www.open-open.com/lib/view/open1391348644910.html using System.IO; using System.Drawing; ...

  9. oracle动态磁盘管理

    一.ASM发展: oracle 想做硬件: 收购sum公司的小型机业务 推出一体机Exadata 1.sum服务器 2.磁盘柜(没做存储) 推出asm建库方式配合一体机(自动使用磁盘柜的盘)(抛弃ra ...

  10. H5中 input消除默认,取消在手机上的点击高亮效果

    input消除默认,代码如下    input{             -webkit-tap-highlight-color: rgba(255, 255, 255, 0);            ...