自然堂网站建设平台分析,企业网站管理系统带授权,陕西省建设网官网住房和城乡厅官网,泉州最专业微信网站建设公司1. 题目
插入。给定两个32位的整数 N 与 M#xff0c;以及表示比特位置的 i 与 j。
编写一种方法#xff0c;将 M 插入 N#xff0c;使得 M 从 N 的第 j 位开始#xff0c;到第 i 位结束。 假定从 j 位到 i 位足以容纳 M#xff0c;也即若 M 10 011#xff0c;那么 j …1. 题目
插入。给定两个32位的整数 N 与 M以及表示比特位置的 i 与 j。
编写一种方法将 M 插入 N使得 M 从 N 的第 j 位开始到第 i 位结束。 假定从 j 位到 i 位足以容纳 M也即若 M 10 011那么 j 和 i 之间至少可容纳5个位。 例如不可能出现 j 3 和 i 2 的情况因为第3位和第2位之间放不下M。
示例1:输入N 10000000000, M 10011, i 2, j 6输出N 10001001100示例2:输入 N 0, M 11111, i 0, j 4输出 N 11111来源力扣LeetCode 链接https://leetcode-cn.com/problems/insert-into-bits-lcci 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。
2. 解题
class Solution {
public:int insertBits(int N, int M, int i, int j) {int mask 0;for(int k i; k j; k)mask | (1k);//mask 000001110000N (~mask);//清零N中间的位, mask 111110001111M i;return N | M;}
};