PAT乙级—1048. 数字加密(20)-native
来源:互联网 发布:linux windows samba 编辑:程序博客网 时间:2024/04/25 18:31
本题要求实现一种数字加密方法。首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余——这里用J代表10、Q代表11、K代表12;对偶数位,用B的数字减去A的数字,若结果为负数,则再加10。这里令个位为第1位。
输入格式:
输入在一行中依次给出A和B,均为不超过100位的正整数,其间以空格分隔。
输出格式:
在一行中输出加密后的结果。
输入样例:
1234567 368782971
输出样例:
3695Q8118
思路:这个题最坑的就是你以为如果A的位数比B长就不用管了,其实还是得把B补成跟A一样长才行。若A
#include<iostream>#include<cstring>using namespace std;int main(){ string A,tB; cin>>A>>tB; int len1=A.size(); int len2=tB.size(); int max=len1>len2?len1:len2; char C[max]; string B=""; if(len1>len2){ //如果A比B长,长多少则补几个0 for(int i=0;i<len1-len2;i++) B+='0'; } B+=tB;//补在左边 for(int i=B.size()-1,j=A.size()-1;i>=0&&j>=0;i--,j--){ if((B.size()-i)%2==0){ //从右边起如果是偶数位 if(B[i]-A[j]<0){//B的数字减去A的数字也就是字符相减 C[i]=(B[i]-A[j])+10+'0';//判断完是否小于0之后转换成字符 }else{ C[i]=B[i]-A[j]+'0';//大于0则直接转换成字符 } }else{ //如果是奇数位 if((B[i]-'0'+A[j]-'0')%13==10)//先将对应位转换成数字再对13取余 C[i]='J'; else if((B[i]-'0'+A[j]-'0')%13==11) C[i]='Q'; else if((B[i]-'0'+A[j]-'0')%13==12) C[i]='K'; else { C[i]=(B[i]-'0'+A[j]-'0')%13+'0'; } } } for(int i=0;i<len2-len1;i++)//若A>B,将不变的元素赋值过来 C[i]=B[i]; for(int i=0;i<max;i++){ cout<<C[i]; } return 0;}
题目链接:
https://www.patest.cn/contests/pat-b-practise/1048
0 0
- PAT乙级—1048. 数字加密(20)-native
- PAT乙级.1048. 数字加密(20)
- PAT 乙级 1048. 数字加密(20)
- 1048. 数字加密(20)PAT乙级
- PAT 乙级 1048. 数字加密(20)
- PAT乙级 1048. 数字加密(20)
- PAT乙级 1048. 数字加密(20)
- [PAT乙级]1048. 数字加密(20)
- PAT乙级1048. 数字加密(20)
- pat 乙级 1048. 数字加密(20)
- PAT乙级 1048. 数字加密(20)
- [PAT-乙级]1048.数字加密
- PAT乙级—1044. 火星数字(20)-native
- PAT乙级—1012. 数字分类 (20)-native
- PAT乙级—1019. 数字黑洞 (20)-native
- 1048. 数字加密(20)-浙大PAT乙级真题
- PAT 乙级 1048. 数字加密(20) Java版
- 1048. 数字加密(20) PAT乙级真题
- kubernets 架构设计 第1章 pod
- AngularJs+bootstrap搭载前台框架1
- Python 刷高博客阅读量
- 【poj2886】Who Gets the Most Candies?——线段树
- MySQL 触发器简单实例
- PAT乙级—1048. 数字加密(20)-native
- 程序员面试金典(三)--数组和字符串
- C++开源库
- SQL server数据库并发控制--加锁
- N-0.5倍分频(Verilog)
- 如何学习android(看stay4it的笔记)+android stdio简单实用简介
- Oracle 执行计划优化
- AngularJs+bootstrap搭载前台框架2
- ThinkPHP中的行为扩展和插件详解