上海计算机学会2025年8月月赛丙组T1镜像加密题解

题目描述

给定一个字符 chch,请输出对 chch 镜像加密后的字符。镜像加密的规则如下:

  • 如果 chch 是一个大写字母,输出大写字母表中 ABCDEFGHIJKLMNOPQRSTUVWXYZ 沿中心镜像对称的字母。例如
    • A 输出 Z
    • Y 输出 B
  • 如果 chch 是一个小写字母,输出小写字母表中 abcdefghijklmnopqrstuvwxyz 沿中心镜像对称的字母。例如
    • a 输出 z
    • y 输出 b
  • 如果 chch 是一个数字字符,输出数字字符表中 0123456789 沿中心镜像对称的数字。例如
    • 0 输出 9
    • 8 输出 1
输入格式
  • 单个字符
输出格式
  • 表示输入字符的镜像加密内容
数据范围
  • 保证输入字符是大写字母、小写字母或数字中的一种
样例数据

输入:

c

输出:

x

输入:

4

输出:

5

题解:找到字符和数字的ascii的开始和结束的位置的ascii码。使用数学方法,比如把a=97和z122的ascii加在一起 等于219,减去输入的字符比如输入的b,则b=98 219-98 =121,则为y的ascii,再转化成数字字符即可。

cpp 复制代码
#include <iostream>
#include<cmath>
using namespace std;
int main() {
	char a;
	cin>>a;
	if(a<=122&&a>=97){
		cout<<char(219-a);
	}else if(a<=90&&a>=65){
		cout<<char(155-a);
	}else{
		cout<<char(105-a);
	}

	return 0;
}
相关推荐
t***5442 小时前
Clang 编译器在 Orwell Dev-C++ 中的局限性
开发语言·c++
oy_mail2 小时前
QoS质量配置
开发语言·智能路由器·php
oyzz1203 小时前
PHP操作redis
开发语言·redis·php
kobesdu3 小时前
人形机器人SLAM:技术挑战、算法综述与开源方案
算法·机器人·人形机器人
nashane3 小时前
HarmonyOS 6学习:网络能力变化监听与智能提示——告别流量偷跑,打造贴心网络感知应用
开发语言·php·harmony app
yolo_guo3 小时前
redis++使用: hmset 与 hmget
c++·redis
凌波粒3 小时前
Java 8 “新”特性详解:Lambda、函数式接口、Stream、Optional 与方法引用
java·开发语言·idea
handler014 小时前
拒绝权限报错!三分钟掌握 Linux 权限管理
linux·c语言·c++·笔记·学习
拾贰_C4 小时前
【Google | Gemini | API | POST】怎么使用Google 的Gemini API (原生版)
开发语言·lua
椰羊~王小美4 小时前
随机数概念及算法
算法