码题集oj赛(第八次)——MT2179 01操作

一、题目

在这里插入图片描述

二、格式

在这里插入图片描述

三、样例

//输入:
4 10
1101
*/-*-*-/*/
//输出:
10110

注意
在这里插入图片描述

四、代码实现

#include<bits/stdc++.h>
using namespace std;
const int N = 5e7 + 7;
int n, m;
char a[N], c;
int main() {cin>>n>>m>>a;while(m--) {cin >> c;switch(c){case '+': {for(int i = n-1; i >= 0; i--){if(a[i] == '0') {a[i] = '1';break;}else {a[i] = '0';}}break;}case '-': {for(int i = n-1; i >= 0; i--){if(a[i] == '1') {a[i] = '0';break;} else {a[i] = '1';}}break;}case '*': {a[n] = '0';a[++n] = '\0';break;}case '/': {a[--n] = '\0';break;}}}	cout << a;return 0;
} 

五、讲解视频

码题集oj赛(第八次)——MT2179 01操作

总结

本题目对于基础牢固的同学来讲十分简单,但是对于什么也不会类型的同学来说还是有点小难度的。
首先,题目中给了四种操作,分别是‘+’、‘-’、‘*’、‘/’
其中,'+'和'-'操作直接就能看懂。但是'*'和'/'操作是要求原二进制数乘以2,那么转换一下就是'*'就是将二进制数左移一位;而'/'操作就是将二进制数右移一位。
同时,这里采用了一种非常简便的方法来实现‘*’、‘/’操作,如果是‘*’的话,因为是左移一位,所以直接在字符串的最后面加上一个'0',然后为了确保万一,我们再在后面添加'\0'来终止字符串。同理,‘/’操作是右移一位,相比左移更加简单,直接把字符串最后一个字符给删了即可,这里还是使用'\0'提前一位终止字符串来实现该操作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/23299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

list删除重复元素几种思路

文章目录 list删除重复元素几种思路hashsetStream流删除所有重复元素 list删除重复元素几种思路 hashset List<String> list2 new ArrayList<>();list2.add("a");list2.add("b");list2.add("a");Set<String> set new HashS…

ES6 - 字符串新增的一些常用方法

文章目录 0&#xff0c;新增的一些方法1&#xff0c;includes()、startsWith()、endsWith()2&#xff0c;repeat()3&#xff0c;padStart()、padEnd()4&#xff0c;trimStart()、trimEnd()5&#xff0c;replaceAll()6&#xff0c;at() 0&#xff0c;新增的一些方法 介绍一些ES6…

SpringBoot整合redis集群实现读写分离(哨兵模式)

1 首先要在Linux虚拟机上安装redis # 安装包存放目录 cd /usr/local/redis # 下载最新稳定版 wget https://download.redis.io/releases/redis-6.2.6.tar.gz # 解压 tar -zxvf redis-6.2.6.tar.gz # 进入解压后的目录 cd /usr/local/redis/redis-6.2.6/ # 编译 make # 执行 &q…

Python 开发工具 Pycharm —— 使用技巧Lv.3

单步执行调试 1&#xff1a; 鼠标左键单击红点是断点行 2&#xff1a;甲虫样式是进行调试方式运行&#xff0c;鼠标左键单击点击 3&#xff1a; 单步运行图标&#xff0c;点击让程序运行一行 4&#xff1a; 步入步出&#xff0c;可以进入当前代码行函数内 5&#xff1a;重新运行…

分布式事务

事务是用户定义的一系列的数据库操作&#xff0c;这些操作可以视为一个完整的逻辑处理工作单元&#xff0c;要么全部成功&#xff08;全部执行&#xff09;&#xff0c;要么全部失败&#xff08;全都不执行&#xff09;&#xff0c;是不可分割的工作单元 分布式事务是指会涉及…

谷粒商城第九天-解决商品品牌问题以及前后端使用检验框架检验参数

目录 一、总述 二、商品分类问题 三、前端检验 四、后端检验 五、总结 一、总述 在完成完商品分类的时候&#xff0c;后来测试的时候还是发现了一些问题&#xff0c;现在将其进行解决&#xff0c;问题如下&#xff1a; 1. 取消显示的时候&#xff0c;如果取消了显示&…

Mybatis引出的一系列问题-spring多数据源配置

在日常开发中我们都是以单个数据库进行开发&#xff0c;在小型项目中是完全能够满足需求的。但是&#xff0c;当我们牵扯到像淘宝、京东这样的大型项目的时候&#xff0c;单个数据库就难以承受用户的CRUD操作。那么此时&#xff0c;我们就需要使用多个数据源进行读写分离的操作…

系统中出现大量不可中断进程和僵尸进程怎么办?

进程状态 通过top命令&#xff0c;我们可以看到进程的状态(S列) toptop - 19:27:57 up 365 days, 25 min, 0 users, load average: 0.06, 0.05, 0.01 Tasks: 134 total, 1 running, 90 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.5 sy, 0.0 ni, 99.2 id, …

Qt中ffmpeg API存储和显示摄像头视频

Qt中ffmpeg API存储和显示摄像头视频的功能需要之前写的视频ffmpegAPI的视频播放的流程。 代码源码位置&#xff1a;https://download.csdn.net/download/qq_43812868/88157743?spm1001.2014.3001.5503 一、存储和显示摄像头的视频的流程 这是读取打开视频文件的流程&#x…

【c++】内存管理

C/C内存管理 C/C内存分布 一个简单题 先试试看吧&#xff0c;答案在文章末尾给出 选择题&#xff1a; 选项: A.栈 B.堆 C.数据段(静态区) D.代码段(常量区) globalVar在哪里&#xff1f;____ staticGlobalVar在哪里&#xff1f;____ staticVar在哪里&#xff1f;____ localVar在…

Docker容器

目录 1.docker简介 docker的优点&#xff1a; docker的应用&#xff1a; 2.docker的基本概念 1.镜像&#xff1a; 2.容器&#xff1a; 3.仓库 3.docker的安装部署&#xff08;yum&#xff09; 4.docker的基础命令 镜像操作&#xff1a; 容器操作&#xff1a; 进入容器…

【C++】开源:Eigen3矩阵与线性代数库配置使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍Eigen3矩阵与线性代数库配置使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&…

problem(3):python IDE和python解释器

为什么写这篇文章呢&#xff1f;遇到了下面的问题&#xff0c;相同的解释器&#xff0c;如果运行angr库的代码&#xff0c;会出现 这样的情况&#xff0c;但是用spyder IDE 会显示正常&#xff0c;很奇怪 应该就是IDE的原因 IDE的循环导入问题 检查IDE配置&#xff1a; 如果可…

一百四十四、Kettle——Linux上安装的kettle8.2连接MySQL数据库

一、目的 在Linux上安装好kettle&#xff0c;然后用kettle连接MySQL数据库 注意&#xff1a;kettle版本是8.2 二、实施步骤 &#xff08;一&#xff09;到kettle安装目录下启动Linux的kettle服务 # cd /opt/install/data-integration/ # ./spoon.sh &#xff08;二&#x…

SpringBoot搭建WebSocket初始化

1.java后端的maven添加websocket依赖 <!-- websocket依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency>2.实例化ServerEndpointExport…

linux安装Java11,maven,docker,mysql,rabbitmq,nacos,redis,es一条龙服务

1 安装jdk11 # 第一步&#xff1a;上传或下载安装包 cd /usr/local jdk-11.0.9_linux-x64_bin.tar.gz# 第二步&#xff1a;解压安装包 tar -xzvf jdk-11.0.9_linux-x64_bin.tar.gz# 第三步&#xff1a;修改环境变量 vim /etc/profile#在末尾加入 JAVA_HOME/usr/local/jdk-11.…

踩坑(5)整合kafka 报错 java.net.UnknownHostException: 不知道这样的主机

java.net.UnknownHostException: 不知道这样的主机。 (5c0c3c629db9)at java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) ~[na:na]at java.base/java.net.InetAddress$PlatformNameService.lookupAllHostAddr(InetAddress.java:933) ~[na:na]at java.ba…

uniapp封装request请求

在基础文件里面创建一个api文件 在创建两个 js文件 http.js 里面封装 request 请求 let baseUrl https://white.51.toponet.cn; //基地址 export const request (options {}) > {//异步封装接口&#xff0c;使用Promise处理异步请求return new Promise((resolve, reject…

MySQL备份还原

mysql> create database school; mysql> use school; /* 1.创建student和score表 */ --创建student表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR…

typescript基础之关键字type

TypeScript的type是一个关键字&#xff0c;用来定义一个类型别名https://www.typescripttutorial.net/typescript-tutorial/typescript-types/。类型别名可以给一个已有的类型起一个新的名字&#xff0c;或者组合多个类型成为一个新的类型。例如&#xff1a; // 给string类型起…