第i位替换 总时间限制: 1000ms 内存限制: 1024kB 描述 写出函数中缺失的部分,使得函数返回值为一个整数,该整数的第i位和m的第i位相同,其他位和n相同。
请使用【一行代码】补全bitManipulation1函数使得程序能达到上述的功能
#include <iostream>using namespace std;int bitManipulation1(int n, int m, int i) { return n - (n & (1 << i)) + (m & (1 << i));}int main() { int n, m, i, t; cin >> t; while (t--) { cin >> n >> m >> i; cout << bitManipulation1(n, m, i) << endl; } return 0;}第i位取反 总时间限制: 1000ms 内存限制: 1024kB 描述 写出函数中缺失的部分,使得函数返回值为一个整数,该整数的第i位是n的第i位取反,其余位和n相同
请使用【一行代码】补全bitManipulation2函数使得程序能达到上述的功能
#include <iostream>using namespace std;int bitManipulation2(int n, int i) {// 在此处补充你的代码}int main() { int t, n, i; cin >> t; while (t--) { cin >> n >> i; cout << bitManipulation2(n, i) << endl; } return 0;}输入 第一行是整数 t,表示测试组数。 每组测试数据包含一行,是两个整数 n 和 i (0<=i<=31)。 输出 输出整型变量n中的第i位取反的结果 样例输入 1 1 0 样例输出 0
#include <iostream>using namespace std;int bitManipulation2(int n, int i) { return n ^ (1 << i);}int main() { int t, n, i; cin >> t; while (t--) { cin >> n >> i; cout << bitManipulation2(n, i) << endl; } return 0;}左边i位取反 总时间限制: 1000ms 内存限制: 1024kB 描述 写出函数中缺失的部分,使得函数返回值为一个整数,该整数的左边i位是n的左边i位取反,其余位和n相同 请使用【一行代码】补全bitManipulation3函数使得程序能达到上述的功能
#include <iostream>using namespace std;int bitManipulation3(int n, int i) {// 在此处补充你的代码}int main() { int t, n, i; cin >> t; while (t--) { cin >> n >> i; cout << bitManipulation3(n, i) << endl; } return 0;}输入 第一行是整数 t,表示测试组数。 每组测试数据包含一行,是两个整数 n 和 i (1<=i<=32)。 输出 对每组输入数据,输出整型变量n中左边i位取反的结果。 样例输入 1 0 32 样例输出 -1
#include <iostream>using namespace std;int bitManipulation2(int n, int i) { return (-1 >> (32 - i) << (32 - i)) ^ n;}int main() { int t, n, i; cin >> t; while (t--) { cin >> n >> i; cout << bitManipulation2(n, i) << endl; } return 0;}菜鸡博主小结: 1.位运算 & 对某些位置0,或获取某一位 2.与运算 | 对某些位置1 3.异或 ^ 将某一位取反
新闻热点
疑难解答