OJ题目分享

【问题3】

本问题中,我们用以下的编码表示一定范围内的整数:

  1. 10〜35:以大写英文字母AZ表示;
  2. 0〜9:以字符’0’9表示;
  3. -1-10:分别以!@#$%?&*()表示;
  4. -11-36:以小写英文字母az示;

这样一来,这些整数均可以由单个字符表示。

如,数列[0,35,18, 2]便可表示为0Zh@

前者书写时需要8个字符不含括号逗号,后者只需4个字符。

上山容易下山难。你在自己的硬盘里翻出了一段以这种格式编码的数据,你希望将这些数据复原。

请编写程序完成这件事。

【输入形式】

输入一行,是一个字符串,表示压缩后的数据。该字符串满足以下三个条件

1不为空。

2仅包含题目中的编码字符。

3长度不超过10000

【输岀形式】

输出共2行。

第一行1个正整数n表示数据个数。

第二行n个以空格分隔的整数a1,a2an表示复原的结果。

【样例输入】

0Zh@

【样例输出】

4

0  35   -18  -2

【样例说明】

字符串长度为4对应编码4个数字,第一行输出4。

第二行依次输出4个整数,空格分隔:第一个字符0对应数字0第二个大写字母Z对应35第三个小写字母h对应-18最后的@对应-2

【评分标准】

根据输入要求输出指定的结果,提交程序名为:code.c。

暴力代码:

#include<stdio.h>
int  turn(char x){switch(x){case 'A':return 10;break;case 'B':return 11;break;case 'C':return 12;break;case 'D':return 13;break;case 'E':return 14;break;case 'F':return 15;break;case 'G':return 16;break;case 'H':return 17;break;case 'I':return 18;break;case 'J':return 19;break;case 'K':return 20;break;case 'L':return 21;break;case 'M':return 22;break;case 'N':return 23;break;case 'O':return 24;break;case 'P':return 25;break;case 'Q':return 26;break;case 'R':return 27;break;case 'S':return 28;break;case 'T':return 29;break;case 'U':return 30;break;case 'V':return 31;break;case 'W':return 32;break;case 'X':return 33;break;case 'Y':return 34;break;case 'Z':return 35;break;case '0':return 0;break;case '1':return 1;break;case '2':return 2;break;case '3':return 3;break;case '4':return 4;break;case '5':return 5;break;case '6':return 6;break;case '7':return 7;break;case '8':return 8;break;case '9':return 9;break;case '!':return -1;break;case '@':return -2;break;case '#':return -3;break;case '$':return -4;break;case '%':return -5;break;case '?':return -6;break;case '&':return -7;break;case '*':return -8;break;case '(':return -9;break;case ')':return -10;break;case 'a':return -11;break;case 'b':return -12;break;case 'c':return -13;break;case 'd':return -14;break;case 'e':return -15;break;case 'f':return -16;break;case 'g':return -17;break;case 'h':return -18;break;case 'i':return -19;break;case 'j':return -20;break;case 'k':return -21;break;case 'l':return -22;break;case 'm':return -23;break;case 'n':return -24;break;case 'o':return -25;break;case 'p':return -26;break;case 'q':return -27;break;case 'r':return -28;break;case 's':return -29;break;case 't':return -30;break;case 'u':return -31;break;case 'v':return -32;break;case 'w':return -33;break;case 'x':return -34;break;case 'y':return -35;break;case 'z':return -36;break;}
}
int main(){char c[10000]={'0'};int sum=0;scanf("%s",&c);int end[10000]={0}; while(c[sum]!='\0'){//记住符号串结尾是\0;end[sum]=turn(c[sum]);sum++;}printf("%d\n",sum);for(int i=0;i<sum;i++){printf("%d ",end[i]);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/796091.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言解决汉诺塔问题

背景 首先带大家了解一下汉诺塔问题 汉诺塔是一个典型的函数递归问题&#xff0c;汉诺塔描述了这样的场景&#xff0c;有三个柱子&#xff0c;A,B,C&#xff0c;A柱为起始柱&#xff0c;在A柱上面有若干大小不同的盘子&#xff0c;最下面的最大&#xff0c;最上面的最小&#x…

Spring Cloud介绍

一、SpringCloud总体概述 Cloud Foundry Service Broker&#xff1a;通用service集成进入Cloud Foundry Cluster&#xff1a;服务集群 Consul&#xff1a;注册中心 Security&#xff1a;安全认证 Stream&#xff1a;消息队列 Stream App Starters&#xff1a;Spring Cloud Stre…

蓝桥杯算法基础(38)c++ STL

哈希表的常用函数 #include<iostream> #include<unordered_map> #include<string> int main(){ //创建一个unordered_map实例 std::unordered_map<std::string,int>hash_table; //插入数据 hash_table["one"]1; …

【WEEK6】 【DAY1】DQL查询数据-第一部分【中文版】

2024.4.1 Monday 目录 4.DQL查询数据&#xff08;重点&#xff01;&#xff09;4.1.Data Query Language查询数据语言4.2.SELECT4.2.1.语法4.2.2.实践4.2.2.1.查询字段 SELECT 字段/* FROM 表查询全部的某某查询指定字段 4.2.2.2.给查询结果或者查询的这个表起别名&#xff08…

socket套接字函数

Socket套接字函数是用于网络编程的一组API&#xff0c;用于在网络上进行通信。这些函数提供了一种通用的接口&#xff0c;使得程序能够通过网络连接进行数据的发送和接收。下面是对常见的几个Socket函数及其参数的解释&#xff1a; socket()函数&#xff1a; 作用&#xff1a;创…

开源代码分享(17)-基于足球队训练算法(Football Team Training Algorithm,FTTA)的组合风速预测

参考文献&#xff1a; [1]Tian Z, Gai M. Football team training algorithm: A novel sport-inspired meta-heuristic optimization algorithm for global optimization[J]. Expert Systems with Applications, 2024, 245: 123088. 1.算法基本原理 足球队训练算法&#xff0…

【Redis】Redis 生产问题。如何确保缓存和数据库数据的一致性? 常见的缓存更新策略?

目录 缓存穿透 缓存穿透解决办法 缓存击穿 击穿解决办法&#xff1f; 缓存穿透和缓存击穿的区别&#xff1f; 缓存雪崩 雪崩解决办法&#xff1f; 如何确保缓存和数据库数据的一致性&#xff1f; 常见的缓存更新策略&#xff1f; 缓存穿透 定义&#xff1a;缓存穿透说…

算法| ss 二叉树

二叉树的层序遍历 102. 二叉树的层序遍历 /*** Definition for a binary tree node.* function TreeNode(val, left, right) {* this.val (valundefined ? 0 : val)* this.left (leftundefined ? null : left)* this.right (rightundefined ? null : righ…

【科普】卫星如何定位汽车

卫星定位汽车的方法&#xff0c;主要依赖于全球定位系统&#xff08;GPS&#xff09;&#xff0c;它是一种结合卫星及通讯发展的技术&#xff0c;利用导航卫星进行测时和测距。用户接收机通过接收这些卫星播发的信号&#xff0c;可以测定其到卫星的距离并确定自身位置。下面&am…

Android APP加固利器:深入了解混淆算法与混淆配置

Android APP 加固是优化 APK 安全性的一种方法&#xff0c;常见的加固方式有混淆代码、加壳、数据加密、动态加载等。下面介绍一下 Android APP 加固的具体实现方式。 混淆代码 使用 ipaguard工具可以对代码进行混淆&#xff0c;使得反编译出来的代码很难阅读和理解&#xff…

授人以渔 选购篇二:冰箱选购要点

文章目录 系列文章容量&#xff1a;每人约需70-80升空间门体类型与尺寸制冷方式&#xff1a;风冷变频能效等级&#xff1a;一级能效品牌其他 系列文章 授人以渔 选购篇一&#xff1a;信用卡选购要点 授人以渔 选购篇二&#xff1a;冰箱选购要点 授人以渔 选购篇三&#xff1a;…

阿里巴巴蔡崇信:中国AI追赶神速,制造业霸主地位无可撼动!

快科技4月5日讯&#xff0c;阿里巴巴集团创始人兼董事长蔡崇信近日就AI技术领域及全球制造业形势发表看法。他认为&#xff0c;尽管中国在AI技术方面与美国有一定差距&#xff0c;但中国的追赶速度非常快。 AI-321 | 专注于AI工具分享的网站 AI工具集 | 人工智能工具箱 | 全球…

金三银四面试题(十五):Java基础问题(6)

这部分面试题多用于面试的热身运动&#xff0c;对很多找实习和准备毕业找工作的小伙伴至关重要。 HashMap与ConcurrentHashMap 都是key-value 形式的存储数据&#xff1b; HashMap 是线程不安全的&#xff0c;ConcurrentHashMap 是JUC 下的线程安全的&#xff1b; HashMap 底层…

NumPy 数组对象

NumPy 数组对象 1. Example 12. Example 2References NumPy 数组一般是同质的 (但有一种特殊的数组类型例外&#xff0c;它是异质的)&#xff0c;即数组中的所有元素类型必须是一致的。这样有一个好处&#xff1a;如果我们知道数组中的元素均为同一类型&#xff0c;该数组所需的…

2024.4.6学习笔记

今日学习韩顺平java0200_韩顺平Java_对象机制练习_哔哩哔哩_bilibili 今日学习p315-p328 动态绑定机制 当调用方法对象的时候&#xff0c;该方法会和该对象的内存地址/运行类型绑定 当调用对象属性时&#xff0c;没有动态绑定机制&#xff0c;哪里声明&#xff0c;哪里使用 …

2024年ERP管理系统职业技能大赛软件测试赛项-销售专员模块Bug清单

目录 一、ERP管理系统说明: 二、销售专员模块部分Bug缺陷清单: 一、ERP管理系统说明: ERP(资源协同)管理平台将采购、销售、库存、服务等活动紧密衔接在一起,提供完整供应链服务࿰

【单片机】PMS5003,PM2.5传感器数据读取处理

文章目录 传感器介绍数据处理解析pm2.5的代码帮助、问询 传感器介绍 PMS5003是一款基于激光散射原理的数字式通用颗粒物浓度传感器,可连续采集 并计算单位体积内空气中不同粒径的悬浮颗粒物个数,即颗粒物浓度分布,进而 换算成为质量浓度,并以通用数字接口形式输出。本传感器可…

综测仪MT8862A控制方法

实现自动化控制&#xff0c;本次为大家讲解综测仪MT8862A的控制逻辑。 新建底层控制逻辑 在文件basis_contorl.py中写入仪器控制底层代码&#xff0c;代码如下&#xff1a; import tkinter.messagebox import pyvisaclass InstrumentControl(object):inst Nonedef __init__(…

Python中的scorecardpy.var_filter函数

scorecardpy是一个用于构建评分卡模型的Python库。在评分卡模型的构建过程中,变量选择是一个关键的步骤,而var_filter函数则是用于进行变量筛选的工具。本文和你一起来探索scorecardpy中的var_filter函数,让你以最短的时间明白这个函数的原理。也可以利用碎片化的时间巩固这…

【学习总结】Linux tmux 使用

1. 使用背景 本地连接服务器 AutoDL 训练模型时&#xff0c;使用 ssh 连接时&#xff1a; ssh -p xxxxx rootconnect.westc.gpuhub.com输入密码登录成功后 为了训练过程中本地和服务器始终连接&#xff0c;可以使用 tmux 终端复用工具开启后台训练 2. 安装 ~# sudo apt-ge…