位运算
位运算应用
YAOSHIAO
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
AcWing 801. 二进制中1的个数(C++算法)
AcWing 801. 二进制中1的个数 1、题目(来源于AcWing): 给定一个长度为n的数列,请你求出数列中每个数的二进制表示中1的个数。 输入格式 第一行包含整数n。 第二行包含n个整数,表示整个数列。 输出格式 共一行,包含n个整数,其中的第 i 个数表示数列中的第 i 个数的二进制表示中1的个数。 数据范围 1≤n≤100000, 0≤数列中元素的值≤109 输入样例: 5 1 2 3 4 5 输出样例: 1 1 2 1 2 2、基本思想: 用 x & -x 返回 x 中最后一位 1。比原创 2020-07-16 16:22:36 · 463 阅读 · 0 评论 -
输出n的二进制数第k位是几(C++)
输出n的二进制数第k位是几 1、题目: n为十进制数,k为要输出的位数。 输入样例: 11 2 输出样例: 0 2、基本思路: 用n右移k位(x = n >> k),看个位是几(x & 1),即 x >> k & 1 3、C++代码如下(该代码引用AcWing网站的代码): #include <iostream> using namespace std; int main() { int n, k; cin >> n >>原创 2020-07-16 16:50:51 · 1115 阅读 · 0 评论
分享