JavaScript PAT乙级题解 1048 数字加密

本题要求实现一种数字加密方法。首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10、Q 代表 11、K 代表 12;对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10。这里令个位为第 1 位。

输入格式:

输入在一行中依次给出 A 和 B,均为不超过 100 位的正整数,其间以空格分隔。

输出格式:

在一行中输出加密后的结果。

输入样例:

1234567 368782971

输出样例:

3695Q8118

题解如下:

20/20

注意a和b长度不相等的情况,如果a的长度大于b的长度,则b前置补零 (case2/case5);如果a的长度小于b的长度,则按a的长度对b进行加密后,将剩下没有加密过的b前置补到结果数组中

 将a和b存在数组里面并反转,从第一位开始挨个进行加密,注意加法没有隐式转换

/*** 2024/03/28* 20/20*/
const readline = require("readline");
const rl = readline.createInterface({input: process.stdin,output: process.stdout,
});rl.on("line", function (data) {let a = data.split(" ")[0].split("").reverse();let b = data.split(" ")[1].split("").reverse();// 如果b的长度小于a的长度,则b后置补0(本来应该是前置补0,但是我反转数组了)let length = a.length - b.length;if (length > 0) {b.length = a.length;b.fill(0, b.length - length);}let resArr = [];for (let i = 0; i < a.length; i++) {if (i % 2 === 0) {// 奇数位let res = (Number(a[i]) + Number(b[i])) % 13;switch (res) {case 10:resArr[i] = "J";break;case 11:resArr[i] = "Q";break;case 12:resArr[i] = "K";break;default:resArr[i] = res;}} else {// 偶数位let res = b[i] - a[i];if (res < 0) {resArr[i] = res + 10;} else {resArr[i] = res;}}}if (resArr.length < b.length) {resArr = resArr.concat(b.splice(resArr.length));}resArr.reverse();console.log(resArr.join(""));
});

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

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

相关文章

【小米SU7实测发布】Python与人工智能的结合

小米在2023年底正式发布小米SU7,成为继华为之后第二个推出成品的的科技企业。不过此时小米需要做的不仅是打造一款产品力够高的车型,更是要以后发者的身份更快速地追上头部智驾车企。从昨天的发布会中可以发现,小米SU7采用双Orin-X芯片以及27个感知硬件组合,这套硬件组合在…

kubernetes-Pod基于污点、容忍度、亲和性的多种调度策略(一)

Pod调度策略 一.标签1.什么是标签2.给Pod资源打标签3.给Node节点打标签4.查看标签资源 二.Node选择器1.nodeName(指定Pod调度到指定Node节点)2.nodeSelector(指定Pod调度到具有指定标签的Node节点) 三.亲和性1.Node亲和性-nodeAffinity2.Pod亲和性-pod-Affinity3.Pod反亲和性-p…

FFmpeg拉取RTSP流并定时生成10秒短视频

生成效果: 视频时长为10秒 生成格式为FLV 输出日志: 完整实现代码如下: 需要在Mac和终端先安装FFmpeg brew install ffmpeg CMake文件配置: cmake_minimum_required(VERSION 3.27) project(ffmpeg_open_stream) set(CMAKE_CXX_STANDARD 17)#头文件包目录 include_director…

ETL工具-nifi干货系列 第五讲 处理器GenerateFlowFile

1、今天我们一起来学习处理器GenerateFlowFile。这个处理器创建带有随机数据或自定义内容的 FlowFiles。GenerateFlowFile 对于负载测试、配置和模拟非常有用。从工具栏拖动处理器到画布&#xff0c;然后选择GenerateFlowFile即可。 2、点击add按钮或者双击 GenerateFlowFile可…

C#WPF控件TextBlock、Label以及与TextBox的区别

本文讲解TextBlock、Label以及与TextBox之间的的区别。 目录 TextBlock和Label区别 TextBox和TextBlock控件区别 TextBlock和Label区别 TextBlock和Label都用于显示文本,但它们有一些区别: 继承:Label继承自ContentControl,而TextBlock直接继承自FrameworkElement。 …

【蓝桥杯省赛真题34】python积木搭建 中小学青少年组蓝桥杯比赛 算法思维python编程省赛真题解析

python积木搭建 第十三届蓝桥杯青少年组python比赛省赛真题 一、题目要求 &#xff08;注&#xff1a;input&#xff08;&#xff09;输入函数的括号中不允许添加任何信息&#xff09; 1、编程实现 小蓝和小青在玩积木搭建游戏&#xff0c;具体玩法如下: 小蓝报一个数字N&…

vue多语言包i18n

1.安装 如果是vue2直接安装8.2.1版本&#xff0c;否则会出现版本不匹配的错误 npm install vue-i18n8.2.1 --save2.文件编辑 在src目录下创建文件 en.js export const h {system: "Background management system",loginOut:"LoginOut",LayoutSet:Layout …

用搜索引擎收集信息-常用方式

1&#xff0c;site csdn.net &#xff08;下图表示只在csdn网站里搜索java&#xff09; 2&#xff0c;filetype:pdf &#xff08;表示只检索某pdf文件类型&#xff09; 表示在浏览器里面查找有关java的pdf文件 3&#xff0c;intitle:花花 &#xff08;表示搜索网页标题里面有花…

Java IO面试题(一)

1. 什么是同步IO和异步IO&#xff1f;请简述它们的区别。 同步IO和异步IO是关于数据读写方式的两种不同模式&#xff0c;它们之间的主要区别在于对IO操作的处理方式。 同步IO是指程序在读写数据时&#xff0c;需要等待操作完成后才能继续执行后面的程序。换句话说&#xff0c…

2024年150道高频Java面试题(四)

7. String 类的常用方法都有哪些&#xff1f; Java中的String类提供了丰富的方法用于字符串操作。以下是一些常用的方法&#xff1a; 长度和判空 int length(): 返回字符串的长度。boolean isEmpty(): 判断字符串是否为空。 获取字符 char charAt(int index): 获取指定索引处…

qtxlsx 学习

简介&#xff1a; QXlsx是一个可以读写Excel文件的库。不依赖office以及wps组件&#xff0c;可以在Qt5支持的任何平台上使用。 QXlsx和QAxObject 比较 QAxObject使用需要系统中安装了offie或wps&#xff0c;这种方法不推荐使用&#xff1b; 因为如果安装了wps&#xff0c;可…

Java基础知识总结(23)

String常量池 String类的对象什么情况会写进常量池&#xff1f; 在JDK当中用双括号括起来的字符串&#xff0c;例如&#xff1a;"abc","def"都是直接存储在“方法区”的“字符串常量池”当中的。 因为字符串在实际开发过程中使用太频繁。为了执行效率&am…

4.Python数据分析—数据分析入门知识图谱索引(知识体系下篇)

4.Python数据分析—数据分析入门知识图谱&索引-知识体系下篇 一个人简介二机器学习基础2.1 监督学习与无监督学习2.1.1 监督学习&#xff1a;2.1.2 无监督学习&#xff1a; 2.2 特征工程2.3 常用机器学习算法概述2.3.1 监督学习算法&#xff1a;2.3.2 无监督学习算法&#…

Phoenix伪分布安装

引言 Phoenix是构建在HBase上的一个SQL层&#xff0c;能让我们用标准的JDBC APIs而不是HBase客户端APIs来创建表&#xff0c;插入数据和对HBase数据进行查询。Phoenix完全使用Java编写&#xff0c;作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫…

python 条件循环语句

python 条件循环语句 一、条件控制语句1. Python3 条件控制2. if 语句3. if 嵌套4. match...case5. 注意&#xff1a; 二、循环控制语句1. Python3 循环语句2. while 循环3. 无限循环4. while 循环使用 else 语句5. 简单语句组6. for 语句7. for...else8. break 和 continue 语…

【保姆级讲解如何构建Python虚拟环境】

&#x1f525;博主&#xff1a;程序员不想YY啊&#x1f525; &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家&#x1f4ab; &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 &#x1f308;希望本文对您有所裨益&#xff0c;如有…

FolkMQ v1.3.2 发布(消息中间件、事件总线)

功能简表 角色功能生产者&#xff08;客户端&#xff09;发布消息、定时消息&#xff08;或叫延时&#xff09;、顺序消息、可过期消息、事务消息。支持 Qos0、Qos1消费者&#xff08;客户端&#xff09;订阅、取消订阅。消费-ACK&#xff08;自动、手动&#xff09;服务端发布…

SAP 前台处理:CO主数据之成本要素组创建-<KAH1>

一、背景 本章是成本要素主数据创建的续章&#xff0c;后续会用到成本费用的分摊分配&#xff0c;费用的统计中。 也是成本控制篇的内容之一 成本控制分主数据篇和业务篇&#xff1a; 主数据篇主要内容&#xff1a; 成本要素、成本中心、订单、作业类型、统计指标、工作中…

微服务(基础篇-006-Docker)

Docker是一个开源的应用容器引擎&#xff0c;它让开发者可以打包他们的应用以及依赖包到一个可移植的容器中&#xff0c;然后发布到任何Linux机器上&#xff0c;也可以实现虚拟化。容器是完全使用沙箱机制&#xff0c;相互之间没有任何接口&#xff08;类似 iPhone 的 app&…

【一】TensorFlow神经网络模型构建之神经元函数及优化方法

TensorFlow神经网络模型构建主要涉及如下几块&#xff1a;神经元函数、卷积函数、池化函数、分类函数、优化方法。下面分别对这几块进行展开说明&#xff1a; 神经元函数及优化方法 神经网络之所以能解决非线性问题&#xff08;如语音、图像识别等&#xff09;&#xff0c;本…