《编程思维与实践》1048.解密字符串

news2024/11/15 22:21:49

《编程思维与实践》1048.解密字符串

题目

在这里插入图片描述

思路

主要到密码是升序的,所以先将每个数字对应的个数求出,之后升序排列输出即可得到结果.

求每个数字(0-9)对应的个数可以考虑每个英文单词中特有的字符(出现单次),

zero,one,two,three,four,five,six,seven,eight,nine;

下面提供其中一种可行的方案:

z为0特有, w为2特有,u为4特有, x为6特有, g为8特有;

o在0,1,2,4中都有出现, 可以通过0,2,4求出1的个数;

h在3,8中都有出现, 可以通过8求出3的个数;

f在4,5中都有出现,可以通过4求出5的个数;

v在5,7中都有出现, 可以通过5求出7的个数;

i在5,6,8,9中都有出现,可以通过5,6,8求出9的个数.

代码

#include<stdio.h>
#include<string.h>

typedef struct{int number;} Data;

int main()
{
	int T;
	scanf("%d",&T);
	for(int t=0;t<T;t++)
	{
		char s[21];
		scanf("%s",s);
		Data tab[10];    //记录0-9对应数字的个数
		int a[128]={0};  //记录每个字母出现的次数 
		memset(tab,0,sizeof(tab));
		for(int i=0;i<strlen(s);i++)
		{
			a[s[i]]++;
		}
		tab[0].number=a['Z'];
		tab[2].number=a['W'];
		tab[4].number=a['U'];
        tab[6].number=a['X'];
        tab[8].number=a['G'];
        tab[1].number=a['O']-tab[0].number-tab[2].number-tab[4].number;
        tab[3].number=a['H']-tab[8].number;
		tab[5].number=a['F']-tab[4].number;
		tab[7].number=a['V']-tab[5].number;
		tab[9].number=a['I']-tab[5].number-tab[6].number-tab[8].number;
		
		printf("case #%d:\n",t); 
		for(int i=0;i<10;i++)    //直接在循环中就可保证升序
		{
			if(tab[i].number!=0)     //出现该数字
			{
				for(int j=0;j<tab[i].number;j++)  //按次数输出
				{
					printf("%d",i);
				}
			}
		}
		printf("\n");
	}
	return 0;
}

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

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

相关文章

系统性能压力测试

系统性能压力测试 一、压力测试 压力测试是给软件不断加压&#xff0c;强制其在极限的情况下运行&#xff0c;观察它可以运行到何种程度&#xff0c;从而发现性能缺陷&#xff0c;是通过搭建与实际环境相似的测试环境&#xff0c;通过测试程序在同一时间内或某一段时间内&…

深度学习—卷积神经网络

卷积神经网络 传统意义上的多层神经网络只有输入层、隐藏层和输出层。其中隐藏层的层数根据需要而定&#xff0c;没有明确的理论推导来说明到底多少层合适。 卷积神经网络CNN&#xff0c;在原来多层神经网络的基础上&#xff0c;加入了更加有效的特征学习部分&#xff0c;具…

人生四维度

人生四维度 不是有钱了就成功&#xff0c;你知道&#xff1b;人生的成功不止一种&#xff0c;你也知道。但成功还有哪种&#xff1f;你知道吗&#xff1f; 如果把人生的体验展开&#xff0c;我们可以得到四个维度&#xff0c;高度、深度、宽度和温度。 财富、权力、影响力 构…

2023年3月股份行GX评测盘点:招商银行稳居榜首,各项指标均居前列

易观&#xff1a;2023 年3月GX评测数据显示&#xff0c;招商银行、平安口袋银行、中信银行位居行业Top 10&#xff0c;浦发银行、兴业银行、光大银行紧跟其后。 股份行APP 用户体验&#xff1a;招商银行以绝对优势稳居第一 2023年3月股份行GX评测结果数据显示&#xff0c;在操作…

VScode代码编辑器官网下载慢问题解决方法-亲测有效

VScode官网下载慢的问题如何解决&#xff1f; 问题描述&#xff1a; VisualStudioCode&#xff08;简称VSCode&#xff09;是Microsoft开发的一款功能强大的代码编辑器&#xff0c;它支持Windows&#xff0c;Linux和macOS等操作系统以及开源代码&#xff0c;因此被很多开发人…

maven从入门到精通 第四章 Maven中依赖的传递、排除、继承、聚合

这里写自定义目录标题 一 maven中依赖的传递1 依赖的传递性2 使用complie范围依赖spring-core3 测试依赖是否被传递4 依赖传递性的意义 二 maven中依赖的排除1 依赖排除概述2 具体操作依赖排除 三 maven中依赖的继承四 maven中依赖的聚合 一 maven中依赖的传递 1 依赖的传递性…

thinkphp+vue+html超市零食品美食推荐系统零食购物商城网站7v281

本系统的开发使获取食品推荐系统信息能够更加方便快捷&#xff0c;同时也使食品推荐系统管理信息变的更加系统化、有序化。系统界面较友好&#xff0c;易于操作 运行环境:phpstudy/wamp/xammp等 开发语言&#xff1a;php 后端框架&#xff1a;Thinkphp5 前端框架&#xff1a;vu…

Linux入门2(常用命令)

Linux入门2 Linux常用命令快捷键基础命令文件查看命令文件编辑命令进程管理命令用户管理命令 Linux常用命令 快捷键 Ctrl Alt T打开终端 Ctrl shift 加号 终端字体放大 ctrl 减号 终端字体缩小 基础命令 sudo su 进入管理员目录 exit 返回到用户目录 ls 当前目录下的文…

数据导向下制造业的生产效率、交易效率提升办法

在智能制造和工业4.0成为趋势的今天&#xff0c;大部分制造业企业&#xff0c;均已在企业内部通过实施PLM系统&#xff08;Product Lifecycle Management&#xff0c;产品生命周期管理系统&#xff09;&#xff0c;实现了对组织内产品研发过程和产品研发数据的管理&#xff0c;…

联发科MT8768核心板 安卓4G核心板智能模块MTK方案主板开发板

MT8768核心板是一款性能优异的芯片板&#xff0c;具有以下特点&#xff1a; 处理器方面&#xff0c;MT8768核心板采用联发科MTK8768平台&#xff0c;搭载八核A53处理器&#xff0c;最高主频可达2.3GHz&#xff0c;为您提供出色的运行速度和高效率。 内存和存储方面&#xff0c;…

OAK相机如何将 YOLO NAS 模型转换成blob格式?

编辑&#xff1a;OAK中国 首发&#xff1a;oakchina.cn 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ 内容可能会不定期更新&#xff0c;官网内容都是最新的&#xff0c;请查看首发地址链接。 ▌前言 Hello&#xff0c;大家好&#xff0c;这里是OAK中国&#xff0c;我是助手…

数据库迁移同步 | 两地三中心到异地双活演变及关键技术探讨

两地三中心和异地多活都是分布式系统的关键技术&#xff0c;用于保证系统的高可用性和容错性。其中最关键的技术无疑是数据同步、同步防环和数据冲突解决。 异地容灾 & 两地三中心 两地三中心架构是一种分布式系统的架构模式&#xff0c;用于保证系统的高可用性和容错性。…

pom文件的project标签报错java.lang.OutOfMemoryError: GC overhead limit exceeded

1、pom文件的project标签报错java.lang.OutOfMemoryError: GC overhead limit exceeded&#xff0c;如何解决&#xff1f; 只需修改idea配置 调大内存&#xff0c;即可解决

git之gitk命令介绍

Gitk 是 Git 提供的一个 GUI 工具&#xff0c;可作为git图形化客户端使用。安装 Git 的时候会自动安装 Gitk 工具。打开git bash&#xff0c;输入 gitk 命令即可打开gitk工具。 Gitk 的主界面主要包含五个部分&#xff1a; 主菜单栏显示区提交信息显示区&#xff0c;显示提交…

【Nginx基础篇】Linux虚拟机安装nginx

目录 一、版本区别 二、编译安装 三、启动nginx 关于防火墙 四、安装成系统服务 一、版本区别 常用版本分为四大阵营 Nginx开源版 http://nginx.org/ Nginx plus 商业版 https://www.nginx.com openresty http://openresty.org/cn/ Tengine http://tengine.taobao.org/ …

BetaFlight统一硬件AOCODARC H7DUAL配置文件讨论

BetaFlight统一硬件AOCODARC H7DUAL配置文件讨论 1. 源由2. Review配置3. 分析整理3.1 生产商信息3.2 磁力计3.3 气压计3.4 陀螺仪3.5 串口RxTx3.6 板载Flash3.7 模拟OSD MAX74563.8 PPM接收机3.9 伺服器3.10 LED灯带3.11 蜂鸣器3.12 电机 X83.13 ADC(电压/电流/RSSI信号强度/空…

(六)Spring源码阅读:invokeBeanFactoryPostProcessors方法

一、概述 invokeBeanFactoryPostProcessors的执行顺序大致如下&#xff0c;先执行子类BeanDefinitionRegistryPostProcessor再执行父类BeanFactoryPostProcessor。而对于同一个类的执行顺序是先执行外部的集合再到子集&#xff0c;之后再到父集。更小维度执行的顺序按照order注…

私人图片云盘 - 本地快速搭建简单的EasyImage图床并实现公网访问

文章目录 1.前言2. EasyImage网站搭建2.1. EasyImage下载和安装2.2. EasyImage网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2 Cpolar内网穿透本地设置 4. 公网访问测试5. 结语 1.前言 一个好的图床&#xff0c;是网站或者文章图片能稳定显示的关键&…

学习网络安全如何避免成为脚本小子或者安全工具人

想要避免成为工具人或者脚本小子&#xff0c;你需要注意学习初期和工作初期的选择。 首先&#xff0c;在学习初期&#xff0c;打好基础最重要&#xff0c;避免成为脚本小子。 你可能发现很多人仅仅会写个Python然后会用工具&#xff0c;积累一点经验就可以找到一份还不错的工…

传奇人物《周兴和》书连载之67 不辱神圣的使命

不辱神圣的使命 这里&#xff0c;先前还是一个十分神秘的地方。 外人和车辆要想进入这片区域&#xff0c;那是绝对不允许的。这片区域隐于群山之中&#xff0c;且戒备森严&#xff0c;外人若想进入&#xff0c;那是要经过好几道政治审查和随身检查的。近年来&#xff0c;随着…