当前位置: 首页 > news >正文

网站建设栏目管理广州和广州市注册公司区别

网站建设栏目管理,广州和广州市注册公司区别,市场调查报告模板及范文,汕头仿站定制模板建站1073. 负二进制数相加 题意 基数为 -2 。实现两个 0/1 数组串的加法。 解法 这是一道模拟题。 设 arr1[i] 和 arr2[i] 是数组 arr1 和 arr2 从低到高的第 i 位数。 首先回顾普通的二进制数的相加,从低位开始计算,在计算的同时维护用一个变量 carry…

1073. 负二进制数相加

题意

  • 基数为 -2 。
  • 实现两个 0/1 数组串的加法。

解法

这是一道模拟题。

arr1[i]arr2[i] 是数组 arr1arr2 从低到高的第 i 位数。

首先回顾普通的二进制数的相加,从低位开始计算,在计算的同时维护用一个变量 carry 维护进位信息,因此,对于第 i 位的结果 ans[i] = arr1[i] + arr2[i] + carry。若 ans[i] = 0, 1,则更新 carry = 0,ans[i] = 0, 1;若 ans[i] = 2, 3,则更新 carry = 1,ans[i] = ans[i] - 2。

类比到基数为 -2 的二进数相加上,从低位开始计算,在计算的同时用一个变量 carry 维护进位信息,同样地,对于第 i 为的结果 ans[i] = arr1[i] + arr2[i] + carry。则此时的 carry 的范围变成了 [-1, 0],ans[i] 的范围变成了 [-1, 0, 1, 2]。若 ans[i] = 0, 1,则更新 carry = 0,ans[i] = 0, 1;若 ans[i] = 2,则更新 carry = -1(因为相邻位的正负号是反的,所以进位一定是 -1 ),ans[i] = ans[i] - 2;若 ans[i] = -1,此时是一种特殊情况,需要单独讨论:

当 ans[i] = -1 时,需要将其进行转换。又注意到:
(-2)i+1 + (-2)i = - (-2)i,所以将 ans[i] 赋为 -1 和将 ans[i] 和 ans[i+1] 都加 1 的效果是一样的,因此更新 carry = 1,ans[i] = 1。

// 官方解法
class Solution {
public:vector<int> addNegabinary(vector<int>& arr1, vector<int>& arr2) {vector<int> ans;int idx1 = arr1.size() - 1, idx2 = arr2.size() - 1;int carry = 0;while(idx1 >= 0 || idx2 >= 0 || carry) 	// carry 要放在 while 循环条件里{int x = carry;if(idx1 >= 0){x += arr1[idx1];}if(idx2 >= 0){x += arr2[idx2];}idx1 --;idx2 --;if(x >=2){ans.push_back(x - 2);carry = -1;}else if (x >= 0){ans.push_back(x);carry = 0;}else{ans.push_back(1);carry = 1;}}// 删去前置 0 while(ans.size() > 1 && ans.back() == 0){ans.pop_back();}reverse(ans.begin(), ans.end());return ans;}
};

http://www.yayakq.cn/news/272745/

相关文章:

  • 铜山区规划建设局网站seo在线工具
  • gif动图素材网站搭建网站 在线浏览功能
  • 网站建设 试卷织梦网站怎么关闭手机模板
  • 优质网站建设的设计要点网站建设管理工作情况汇报
  • 网站制作应该选什么怎么样评价网站做的好坏
  • 网站右键禁止网络营销知识
  • 做维修电器网站全国连锁装修公司加盟
  • 网站后台栏目管理外贸求购信息网
  • 网站分析设计做的项目的过程直播视频网站如何做
  • 上海校园兼职网站建设超市代理商网站模板
  • 青海专业网站建设推广平台建设专业网站建设定制
  • 网站如何引导百度推广
  • 网站运营周期轻量服务器wordpress
  • 风铃网做微网站要钱吗开发公司 工程管理中存在问题
  • 企业网站开发模板有没有免费的源码网站
  • 专业设计素材网站湛江建设工程造价信息网
  • 手机网站模块如何 申请个人网站
  • 网站设计背景移动端cpu性能天梯图2023
  • wordpress能做手机站吗办网站除了域名备案 还需要什么
  • 建立企业网站的技能wordpress怎么修改密码
  • 网站开发学哪一个好wordpress登录失败
  • 广州比较有名的网站建设公司公司注册网上申报流程
  • 公路水运建设质量与安全监督系统网站统帅装修怎么样
  • 龙泉网站开发mvc网站开发视频
  • 网站网站怎么建设来自网站的临时会话
  • 公司网站上传ftp教程重庆网站制作技术
  • 可以进入的网站wordpress建立数据库错误
  • 一流的常州做网站黄山网站建设jidela
  • 洛阳网站公司哪家好网页特效经典300例
  • n加1网站建设网站建设制作设计平台