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

输入格式:

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

输出格式:

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

输入样例:

1234567 368782971

输出样例:

3695Q8118

思路分析:同样用字符串存大数,注意两个数位数不对等的情况

代码如下:

#include<stdio.h>
#include<string.h>int main()
{char a[101] , b[101], c[101];int j, i, buff,l;scanf("%s%s", a, b);for (i = strlen(a)-1, j = strlen(b)-1,l=1; i >= 0 &&j >= 0; i--, j--,l++) {if (l % 2 == 1) {buff = (a[i] - '0' + b[j] - '0') % 13;if (buff < 10) {c[l - 1] = buff + '0';}else {switch (buff) {case 10:c[l - 1] = 'J'; break;case 11:c[l - 1] = 'Q'; break;case 12:c[l - 1] = 'K'; break;}}}if (l % 2 == 0) {buff = b[j] - a[i];if (buff < 0) {c[l - 1] = buff + 10 + '0';}elsec[l - 1] = buff + '0';}}while (j>=0) {c[l - 1] = b[j];j--;l++;}while (i>=0) {if (l % 2 == 0) {buff = '0' - a[i];if (buff < 0) {c[l - 1] = buff + 10 + '0';}else {c[l - 1] = '0';}}else {c[l - 1] = a[i];}i--;l++;}c[l - 1] = '\0';for (i = l - 2; i >= 0; i--) {printf("%c", c[i]);}return 0;
}

1048. 数字加密(20)相关推荐

  1. C++学习之路 | PTA乙级—— 1048 数字加密 (20 分)(精简)

    1048 数字加密 (20 分) 本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 ...

  2. 1048. 数字加密(20)-浙大PAT乙级真题

    1048. 数字加密(20) 本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余--这里 ...

  3. PAT乙级 1048. 数字加密(20)

    1048. 数字加密(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求实现一种数字加密方法.首先固 ...

  4. PAT (Basic Level) Practice (中文)1048 数字加密 (20 分)

    本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余--这里用 J 代表 ...

  5. 测试点分析:1048 数字加密 (20分)_16行代码AC

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位 ...

  6. PAT 乙级 1048. 数字加密(20) Java版

    本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余--这里用J代表10.Q代表11.K代 ...

  7. 1048 数字加密 (20分)

    本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余--这里用 J 代表 ...

  8. 1048 数字加密 (20 分) javascript

    本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余--这里用 J 代表 ...

  9. 【PAT乙级】1048 数字加密 (20 分)

    题目地址 #include<cstdio> #include<iostream> #include<string> #include<algorithm> ...

最新文章

  1. 【杂谈】如何让你的2020年秋招CV项目经历更加硬核,可深入学习有三秋季划4大领域32个方向(2020.7.23号后涨价)
  2. mysql二进制安装的优缺点_MYSQL的二进制安装
  3. 配置错误:未能使用提供程序“RsaProtectedConfigurationProvider”进行解密。提供程序返回错误信息为: 打不开 RSA 密钥容器。...
  4. SAP CRM附件上传的一种增强实现
  5. MFC 错误异常,用vs添加资源并为资源定义类后报错:error C2065 : 未声明的标识符...
  6. linux查看机器配置命令,linux 下查看机器配置的几个命令
  7. 数据结构与算法-常见时间复杂度
  8. 在ie中关于ajax请求获得数据缓存问题的解决办法
  9. JSP学习笔记(六十二):struts2中的Lambda表达式
  10. 进度条ProgressBar及ProgressDialog
  11. linux执行sql脚本db2,DB2批量执行SQL脚本的实现
  12. visio2003乱码问题
  13. Informatic中如何设置每月初,和每周五、周六跑批
  14. 华为android是什么文件夹,华为手机里的文件夹代表什么?哪些可以清除?看完秒懂!...
  15. codecademy课程笔记——JavaScript Promise
  16. 四、Hibernate框架的API (三)-- Session对象
  17. SpringSecurity超详细入门介绍
  18. 树莓派4B使用VNC连接之大无语事件
  19. K近邻(KNN)算法总结
  20. 基于vscode安装pytorch

热门文章

  1. 毫米波雷达在无人机避障系统中的应用
  2. FileZilla报错严重文件传输错误 550permission denied
  3. 3个免费、无损压缩图片的工具,一键解决图片过大问题
  4. OncoImmunity成为获得机器学习新抗原预测技术临床应用CE-IVD标记的首家公司
  5. 多套头像/壁纸/背景图资源微信小程序源码 粉色UI 带流量主
  6. 解决wps writer未响应无法打印,一点打印就无响应死机,PDF用网页打开打印也会死机的问题
  7. 访问虚拟机上的本地网站
  8. 中国后续发展的知识来源问题
  9. 数据库并发事务存在的问题(脏读、不可重复读、幻读等)
  10. java语言商场打折_Java封装商场打折策略(Strategy模式)