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

输入格式:

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

输出格式:

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

输入样例:

1234567 368782971

输出样例:

3695Q8118
代码写的又多又冗余,需注意的是,当B的长度小于A的长度时B需要前端补零,以及最后一个测试点当B长度小于A长度时,A元素为零需要做特殊处理。
 #include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<ctype.h>
#include<math.h>
int main(){
char a[];
char b[];
scanf("%s",a);
getchar();
scanf("%s",b);
char c[];
int lena = strlen(a);
int lenb = strlen(b);
int j;
int temp;
if(lenb-lena>=){
for(int i=;i<lenb-lena;i++){
printf("%c",b[i]);
}
j = ;
temp = lena;
for(int i=lenb-lena;i<lenb;i++){
if((temp--)%==){
b[i] = b[i]-a[j];
if(b[i]<){
b[i] = b[i]+;
}
b[i] = b[i]+'';
}
else{
if((b[i]-''+a[j]-'')%>=){
if((b[i]-''+a[j]-'')%==)
b[i] = 'J';
else if((b[i]-''+a[j]-'')%==){
b[i] = 'Q';
}
else if((b[i]-''+a[j]-'')%==){
b[i] = 'K';
}
}
else{
b[i] = (b[i]-''+a[j]-'')%+'';
} }
j++;
printf("%c",b[i]);
}
}
else{
temp = lena;
for(int i=;i<lena-lenb;i++){
if((temp--)%==){
if(a[i]!='')
printf("%c",''+-a[i]+'');
else
printf("");
}
else{
printf("%c",a[i]);
}
}
j = lena-lenb;
temp = lenb;
for(int i=;i<lenb;i++){
if((temp--)%==){
b[i] = b[i]-a[j];
if(b[i]<){
b[i] = b[i]+;
}
b[i] = b[i]+'';
}
else{
if((b[i]-''+a[j]-'')%>=){
if((b[i]-''+a[j]-'')%==)
b[i] = 'J';
else if((b[i]-''+a[j]-'')%==){
b[i] = 'Q';
}
else if((b[i]-''+a[j]-'')%==){
b[i] = 'K';
}
}
else{
b[i] = (b[i]-''+a[j]-'')%+'';
} }
j++;
printf("%c",b[i]);
}
} }

PAT 1048. 数字加密(20)的更多相关文章

  1. PAT 1048 数字加密(20)(代码+思路)

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

  2. PAT 乙级 1048 数字加密(20) C++版

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

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

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

  4. PAT Basic 1048 数字加密 (20 分)

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

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

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

  6. PAT 1048数字加密

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

  7. PAT 1048 数字加密

    https://pintia.cn/problem-sets/994805260223102976/problems/994805276438282240 本题要求实现一种数字加密方法.首先固定一个加 ...

  8. PAT——1048. 数字加密

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

  9. 1048 数字加密 (20 分)C语言

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

随机推荐

  1. SharePoint 2013 configure and publish infopth

    This article will simply descript how to configure and publish a InfoPath step by step. Note: To con ...

  2. miniui中的相关问题

    miniui中的datagrid,若需要为其中表格设置值,则: 必须保证查出来的json中字段对应field,且json的格式必须为: {“data”:[{"id":"0 ...

  3. External Configuration Store Pattern 外部配置存储模式

    Move configuration information out of the application deployment package to a centralized location. ...

  4. Razor语法中绑定一个值给checkbox

    在ASP.NET MVC开发中,需要绑定一个值给checkbox标签,如下面写法,它们运行时是没有问题,照样能跑. 看看上面的语法,在绑定时,它却出现绿浪线.提不绑定的值is not a valid ...

  5. Attribute操作的性能优化方式

    Attribute是.NET平台上提供的一种元编程能力,可以通过标记的方式来修饰各种成员.无论是组件设计,语言之间互通,还是最普通的框架使 用,现在已经都离不开Attribute了.迫于Attribu ...

  6. 运行第一个PHP程序

    由于PHP比较简单,所以闲来无事学习一下PHP的程序. 之前安装XAMPP出现各种错误,于是下载了PHPStudy,真的十分简单方便,感谢网站开发者. 可以在网站的软件下载中下载,附上首页链接:htt ...

  7. 【转载】PHP PSR-1 基本代码规范(中文版)

    基本代码规范 本篇规范制定了代码基本元素的相关标准, 以确保共享的PHP代码间具有较高程度的技术互通性. 关键词 "必须"("MUST")."一定不可 ...

  8. java Io流更新文件内容

    package com.hp.io; import java.io.FileOutputStream; import java.io.IOException; public class FileOut ...

  9. Hibernate4.2.4入门(一)——环境搭建和简单例子

    一.前言 发下牢骚,这段时间要做项目,又要学框架,搞得都没时间写笔记,但是觉得这知识学过还是要记录下.进入主题了 1.1.Hibernate简介 什么是Hibernate?Hibernate有什么用? ...

  10. AlloyRenderingEngine继承

    写在前面 不读文章,只对代码感兴趣可以直接跳转到这里 https://github.com/AlloyTeam/AlloyGameEngine然后star一下,多谢支持:). 前几天发了篇向ES6靠齐 ...