news 2026/6/11 18:23:55

UVa 458 The Decoder

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UVa 458 The Decoder

题目描述

题目要求解码一个简单的字符替换密码。编码方式是对每个可打印ASCII\texttt{ASCII}ASCII字符进行统一的算术变换。从样例可以看出,编码字符与解码字符之间相差固定值(777)。例如,输入中的1对应输出中的*ASCII\texttt{ASCII}ASCII494949424242,差777)。因此,解码只需将每个字符的ASCII\texttt{ASCII}ASCII码减去777即可。

输入格式

输入包含若干行,每行是一个编码后的字符串。输入以文件结束符(EOF\texttt{EOF}EOF)终止。

输出格式

输出解码后的字符串,保持原行结构。

样例

输入

1JKJ'pz'{ol'\{yhklthy'r'vm'{ol'Jvu{yvs'Kh{h'Jyywyh{pvu5 1PIT'pz'h'\{yhklthy'r'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jyywyh{pvu5 1KLJ'pz'{ol'\{yhklthy'r'vm'{ol'Kpnp{hs'Lx|pwtlu'Jyywyh{pvu5

输出

*CDC is the trademark of the Control Data Corporation. *IBM is a trademark of the International Business Machine Corporation. *DEC is the trademark of the Digital Equipment Corporation.

题目分析

本题的核心是发现编码与解码之间的映射规律。从样例可以推断,每个字符的ASCII\texttt{ASCII}ASCII码减去777即为解码后的字符。因此,逐字符读取输入,对每个非换行符减去777后输出,换行符直接输出。

验证

  • 输入1ASCII\texttt{ASCII}ASCII494949)→ 输出*ASCII\texttt{ASCII}ASCII424242),差777
  • 输入JASCII\texttt{ASCII}ASCII747474)→ 输出CASCII\texttt{ASCII}ASCII676767),差777
  • 输入KASCII\texttt{ASCII}ASCII757575)→ 输出DASCII\texttt{ASCII}ASCII686868),差777
  • 其他字符同理。

实现方法

  • 使用cin.unsetf(ios::skipws)禁止跳过空白字符,以便读取空格和换行符。
  • 逐字符读取,遇到换行符输出换行,否则输出char(letter - 7)

复杂度分析

每个字符处理一次,时间复杂度O(L)O(L)O(L)LLL为输入总长度。

代码实现

// The Decoder// UVa ID: 458// Verdict: Accepted// Submission Date: 2016-07-12// UVa Run Time: 0.010s//// 版权所有(C)2016,邱秋。metaphysis # yeah dot net#include<bits/stdc++.h>usingnamespacestd;intmain(){cin.tie(0);cout.tie(0);ios::sync_with_stdio(false);cin.unsetf(ios::skipws);charletter;while(cin>>letter){if(letter!='\n')cout<<(char)(letter-7);elsecout<<letter;}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/11 18:23:20

射频接收机时钟与PLL系统设计:从晶体振荡到频率合成的完整解析

1. 项目概述&#xff1a;为什么时钟与PLL是射频接收机的“心脏”&#xff1f;在Sub-1 GHz频段的无线通信世界里&#xff0c;无论是智能家居的传感器、工业物联网的节点&#xff0c;还是远距离遥控设备&#xff0c;其核心都是一个可靠的射频接收机。而在这个接收机内部&#xff…

作者头像 李华
网站建设 2026/6/11 18:20:52

3分钟告别消息撤回焦虑:PC版微信QQ防撤回补丁极速上手指南

3分钟告别消息撤回焦虑&#xff1a;PC版微信QQ防撤回补丁极速上手指南 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁&#xff08;我已经看到了&#xff0c;撤回也没用了&#xff09; 项目地址: https://gitcod…

作者头像 李华
网站建设 2026/6/11 18:16:53

163MusicLyrics:5分钟掌握免费歌词下载与管理的完整指南

163MusicLyrics&#xff1a;5分钟掌握免费歌词下载与管理的完整指南 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 还在为音乐播放器缺少歌词而烦恼吗&#xff1f;163Mu…

作者头像 李华
网站建设 2026/6/11 18:15:57

用Python+Mediapipe做个手势控制PPT翻页器,告别激光笔(附完整代码)

用PythonMediapipe打造智能手势控制PPT系统&#xff1a;从零实现无接触演示想象一下&#xff0c;站在会议室前方&#xff0c;无需触碰任何设备&#xff0c;仅凭几个简单手势就能流畅控制PPT翻页——这不再是科幻电影的场景。借助Python和Mediapipe&#xff0c;我们可以将日常办…

作者头像 李华