156 - ZOJ Monthly, January 2019 - A
题目链接:Little Sub and Pascal's Triangle
这一道题是要求杨辉三角的任意一行有多少个奇数
头痛无解
最后搜了一下,有个类似的解答,然后知道怎么写了,但是具体为什么会这样还是不懂
那道题的解法就是,你要求的第几行,就把对应于那行的序号转化为二进制,然后查那个二进制数有几个1,假设这个数是a,那一行就有2的a次方个1
对以上步骤的实现主要采用移位的操作,对行序号进行与运算,如果各位为奇数,运算结果就是1
求2的次方也是采用移位的操作
一下AC代码:
#include<iostream>
using namespace std;
int main(){int T;cin>>T;while(T--){long long n;cin>>n;n--;long long e=1;while(n>0){if(n&1){e<<=1;n>>=1; }else{n>>=1;}}cout<<e<<endl;}return 0;
}
然后我参考的代码是这样的
#include<iostream>
using namespace std;
int main(){int T;cin>>T;while(T--){int n;cin>>n;int k=__builtin_popcount(n);//得出二进制n中1的个数 cout<<(1LL<<k)<<endl; //2^k }return 0;
}
---------------------
作者:XuKathy
来源:CSDN
原文:https://blog.csdn.net/XuKathy/article/details/52653647
版权声明:本文为博主原创文章,转载请附上博文链接!
没见过__builtin_popcount()这个函数
总结:
这样的题,如果之前没见过就写不出来,自己也推不出这样的结论,不是模拟,不能触及到以前的知识,或者说是自己太菜
156 - ZOJ Monthly, January 2019 - A相关推荐
- ZOJ Monthly, January 2019 - A 规律
题目链接:Little Sub and Pascal's Triangle 要求:求杨辉三角的任意一行有多少个奇数 首先找规律,发现你要求的第几行,就把对应于那行的序号转换为二进制后1的个数, 假设这 ...
- ZOJ Monthly, January 2013
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4945 变量写错悲剧. 转载于:https://www.cnblogs.com/ ...
- ZOJ Monthly, January 2018 - J Distance
题意: 找出有几个数量相等的连续的区间对. 区间里的相对距离<=V. POINT: n^2的效率遍历上下数组的开头.然后每次扫一遍就有答案.因为区间要连续的.每次都是右边加进来.左边删掉最优. ...
- ZOJ Monthly, January 2013 记
就A了5题..赛后A了J题(很无耻地过的..无法证明结论,暂时没想出为什么来) 好久没做这么紧张的比赛了..还是一个人..有点不适应,思路不快也不准,有些题因为低级错误WA了好多次,纠结了好久.. A ...
- 思维+multiset ZOJ Monthly, July 2015 - H Twelves Monkeys
题目传送门 1 /* 2 题意:n个时刻点,m次时光穿梭,告诉的起点和终点,q次询问,每次询问t时刻t之前有多少时刻点是可以通过两种不同的路径到达 3 思维:对于当前p时间,从现在到未来穿越到过去的是 ...
- ZOJ Monthly, November 2012
A.ZOJ 3666 Alice and Bob 组合博弈,SG函数应用 #include<vector> #include<cstdio> #include<cstri ...
- ZOJ Monthly,Feburary 2012 部分题解
题目链接:点击打开链接 ZOJ 3573 Under Attack 距离做这套题到写题解间隔比较久,题意有些忘了.. #include <iostream> #include <cs ...
- ZOJ Monthly, February 2012 - H Matrix (ZOJ 3578)
开始看到这题以为是二维线段树,但是二维的线段树从来没写过也不知道怎么写,昨天晚上突来灵感,可以用复杂度为c2的一个方法,每次比较两个矩阵是否相交,然后更新矩阵的值,速度很快!zoj月赛ac这题的人大部 ...
- ZOJ Monthly, June 2014 月赛BCDEFGH题题解
比赛链接:点击打开链接 上来先搞了f.c,,然后发现状态不正确,一下午都是脑洞大开,, 无脑wa,无脑ce...一样的错犯2次.. 硬着头皮搞了几发,最后20分钟码了一下G,不知道为什么把1直接当成不 ...
最新文章
- R语言ggplot2可视化:在选定数据点周围添加三角形(Add Triangles Around Select Data Points)
- j2recover----最强大的jfs2文件恢复工具
- ELK结合logback搭建日志中心
- 5个让你充满健身动力的方法
- 触摸传感器的电路图符号_光电传感器电路图以及应用和优点
- 上周面试回来后写的Java面试总结,想进BAT必看
- JDK 9 @不建议使用的注释增强功能
- 导入安全证书到jdk
- CPU 是如何执行任务的?
- Adobe illustrator 调整图例为2列 - 连载 16
- Python之collections模块详细实例
- Stateflow_报错记录
- 20220213:力扣第280场周赛(上)
- 深入解析Mysql 主从同步延迟原理及解决方案
- 18. 分支管理策略
- css鼠标hover的时候变成小手型
- 中国十大B2C电商站点开发语言调查
- Instagram 图谱 API
- IDEA代码和页面前进后退快捷键
- 安卓手机屏幕失灵后通讯录导出
热门文章
- IDEA快捷键200+分类汇总
- 2017职称英语和计算机考试,2017高级会计师申报评审需要考职称英语和计算机吗...
- mysql fulltext 不起作用_MySQL FULLTEXT不工作
- ZYNQ学习之旅--PS_QSPI读写flash
- 微软:我们的电脑识图能力已超越人类
- java设计博客_JAVA课程设计——团队博客
- 安卓日记本设计内容介绍_三年级学习写日记,先了解格式、内容和写作方向
- 【软件测试】07 -- 黑盒测试方法(等价类划分法)
- C P U的指令系统又称为什么语言,全国自考(微型计算机原理与接口技术)模拟试卷9...
- DES与3DES加密C++实现