#P0996. [NOIP2006普及组] Jam的计数法

news2024/9/21 11:14:53

题目描述

Jam 是个喜欢标新立异的科学怪人。他不使用阿拉伯数字计数,而是使用小写英文字母计数,他觉得这样做,会使世界更加丰富多彩。

在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文字母按原先的顺序,排在前面的字母小于排在它后面的字母。我们把这样的“数字”称为 Jam 数字。在 Jam 数字中,每个字母互不相同,而且从左到右是严格递增的。每次,Jam 还指定使用字母的范围,例如,从 2\sim 102∼10,表示只能使用 {b,c,d,e,f,g,h,i,j}b,c,d,e,f,g,h,i,j 这些字母。如果再规定位数为 55,那么,紧接在 Jam 数字 \texttt{bdfij}bdfij 之后的数字应该是 \texttt{bdghi}bdghi。(如果我们用 UU 、 VV 依次表示 Jam 数字 \texttt{bdfij}bdfij 与 \texttt{bdghi}bdghi,则 U<VU<V,且不存在 Jam 数字 PP,使 U<P<VU<P<V)。

你的任务是:对于从文件读入的一个 Jam 数字,按顺序输出紧接在后面的 55 个 Jam 数字,如果后面没有那么多 Jam 数字,那么有几个就输出几个。

输入格式

共 22 行。

第 11 行为 33 个正整数 s, t, ws,t,w,用一个空格隔开。

(其中 ss 为所使用的最小的字母的序号,tt 为所使用的最大的字母的序号。ww 为数字的位数,这 33 个数满足:1\le s<T\le 26,2\le w\le t-s1≤s<T≤26,2≤w≤t−s)

第 22 行为具有 ww 个小写字母的字符串,为一个符合要求的 Jam 数字。

所给的数据都是正确的,不必验证。

输出格式

最多为 55 行,为紧接在输入的 Jam 数字后面的 55 个 Jam 数字,如果后面没有那么多 Jam 数字,那么有几个就输出几个。每行只输出一个 Jam 数字,是由 ww 个小写字母组成的字符串,不要有多余的空格。

输入数据 1

2 10 5
bdfij

Copy

输出数据 1

bdghi
bdghj
bdgij
bdhij
befgh

Copy

来源

NOIP 2006 普及组 第三题

代码:

#include<iostream> 
using namespace std;
int a[100],b[100];
int s,t,w;
char c;
int main(){
	cin>>s>>t>>w;
	for(int i=1;i<=w;i++) {
		cin>>c;
		a[i]=c-'a';
		b[w-i+1]=t-i; //计算限位 
	}
	for(int i=1;i<=5;i++){
		int k=0;
		for(int j=w;j>0;j--)
			if(a[j]<b[j]){
				k=j;
				break;
			}
		if(k==0) break;
		a[k]++;
		for(int j=k+1;j<=w;j++)
			a[j]=a[j-1]+1;
		for(int j=1;j<=w;j++)
			cout<<char(a[j]+'a');
		cout<<endl;
	}
	return 0;	
}

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

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

相关文章

1、Tomcat

java介绍 Java语言和平台由以下几个主要部分组成&#xff1a; 1、Java编程语言(Java Language)&#xff1a;这是Java的核心部分&#xff0c;包括Java语法、关键字、数据类型、运算符、控制结构等。程序员使用Java语言来编写应用程序的源代码。 2、Java开发工具包(Java Developm…

企业可以申请DV https证书吗

DV https证书是有基础认证的数字证书&#xff0c;所以DV https证书也可以叫DV基础型https证书。DV基础型https证书是众多https证书中既支持个人&#xff0c;也支持企事业单位申请的https证书&#xff0c;所以企事业单位都可以申请DV基础型https证书&#xff0c;不论是企业门户网…

价值 1k 嵌入式面试题-计算机网络 OSI

开门见山 请讲下 OSI 各层协议的主要功能&#xff1f; 常见问题 回答不系统回答不确切无法和实际网络协议做关联对应 答题思路 OSI 代表了开放互联系统中信息从一台计算机的一个软件应用流到另一个计算机的另一个软件应用的参考模型 OSI 包含 7 层&#xff0c;每一层负责特…

【JavaSE】- 5min拿下泛型!

泛型 1.1 泛型的定义1.2 泛型细节2.1 泛型类2.2 泛型方法2.3 泛型接口2.4 泛型的通配符 1.1 泛型的定义 泛型的介绍 提供了编译时类型安全检测机制 泛型的好处 把运行时期的问题提前到了编译期间避免了强制类型转换&#xff0c;造成了代码的不优雅 泛型的定义格式 <类型&…

7种方法!教你如何使用Telerik UI for ASP.NET定制编辑器

Telerik UI for ASP.NET Core是用于跨平台响应式Web和云开发的最完整的UI工具集&#xff0c;拥有超过60个由Kendo UI支持的ASP.NET核心组件。它的响应式和自适应的HTML5网格&#xff0c;提供从过滤、排序数据到分页和分层数据分组等100多项高级功能。 Telerik UI for ASP.NET …

自己动手从零写桌面操作系统GrapeOS——4.1 在VirtualBox中安装CentOS

之前讲解开发环境时并没有介绍具体的安装过程&#xff0c;有网友反应CentOS的安装配置有问题&#xff0c;尤其是共享文件夹。本讲我们就来补充介绍一下在VirtualBox中安装配置CentOS的具体过程&#xff0c;彻底解决GrapeOS开发环境问题。 一、新建虚拟机 1.在VirtulBox中点击…

电脑主机启动不起来怎么回事?2023最新解决方法!

“我的电脑刚用才没多久&#xff0c;怎么主机突然就启动不起来了呢&#xff1f;试了很多方法还是不行&#xff0c;这我该怎么解决呀&#xff1f;” 在日常的学习和工作中&#xff0c;大多数人已经离不开电脑了。当然&#xff0c;在使用电脑的过程中&#xff0c;会遇到各种各样…

[Docker]入门之docker-compose

一&#xff0c;Docker-compose简介 1&#xff0c;Docker-compose简介 Docker-Compose项目是Docker官方的开源项目&#xff0c;负责实现对Docker容器集群的快速编排。 Docker-Compose将所管理的容器分为三层&#xff0c;分别是工程&#xff08;project&#xff09;&#xff0c…

Qt使用QQuickWidget的输入法问题(Qt5.12及以前)

Qt使用QQuickWidget的输入法问题&#xff08;Qt5.12及以前&#xff09; 最近有网友表示&#xff0c;在使用QQuickWidget嵌入到QWidget时&#xff0c;QML内部的输入法会有问题。 主要表现是&#xff0c;当焦点从QWidget&#xff08;比如QLineEdit&#xff09;切换到QQuickWidg…

Spring学习笔记——1

Spring学习笔记——1 一、Spring入门1.1、学习路线1.2、传统Javaweb开发困惑及解决方法1.3、三种思想的提出和框架概念1.3.1、IoC、DI和AOP思想提出1.3.2、框架的基本特点 1.4、Spring概述1.5、BeanFactory快速入门1.6、ApplicationContext快速入门1.7、BeanFactory与Applicati…

复习第四章集合+多线程

一、集合 Collection派生 我们在使用集合的时候其实更多的是使用List、Set、Map集合进行操作&#xff0c;List、Set又继承自Collection Collection下的集合为单列集合&#xff0c;可以理解为一个集合当中的数据只代表一个“对象”。 Map派生 Map代表的是存储key-value对的集…

为高性能计算构建,由亚马逊云科技Amazon Graviton3E驱动的最新实例正式可用

亚马逊云科技宣布两款基于最新一代自研芯片Amazon Graviton3E的新实例Amazon Elastic Compute Cloud&#xff08;Amazon EC2&#xff09;Hpc7g和Amazon EC2 C7gn正式可用。 其中&#xff0c;Hpc7g实例专为计算和网络密集型高性能计算&#xff08;HPC&#xff09;工作负载而构建…

K8s安全配置:CIS基准与kube-bench工具

01、概述 K8s集群往往会因为配置不当导致存在入侵风险&#xff0c;如K8S组件的未授权访问、容器逃逸和横向攻击等。为了保护K8s集群的安全&#xff0c;我们必须仔细检查安全配置。 CIS Kubernetes基准提供了集群安全配置的最佳实践&#xff0c;主要聚焦在两个方面&#xff1a;主…

axios 网络应用 axios基本使用

之前学了vue本地应用&#xff0c;通过Vue提供的各种指令&#xff0c;对本地的数据进行操作。 但是现在很少有纯本地的应用了&#xff0c;或多或少都会进行网络数据的交互。这个就想要axios&#xff0c;内部是阿贾克斯&#xff0c;封装之后使用起来更加便捷&#xff0c;并且功能…

【Java练习题汇总】《第一行代码JAVA》综合测试一,汇总Java练习题

Java练习题 综合测试一 1️⃣ 综合测试一 1️⃣ 综合测试一 下面关于Java 的特点不正确的一项是( )。 A. Java 具备跨平台性&#xff0c;可以在任意的操作系统间进行移植 B. Java 编写的程序可以直接解释执行&#xff0c;属于解释型的编程语言类型 C. Java 中具备垃圾收集机制…

Linux安装VScode

从本篇开始&#xff0c;打算有时间就写写在VScode中编写一些ros相关的案例程序用于学习记录。本篇是如何在Linux安装VScode的第一篇。 一、下载VScode 在Linux中打开浏览器输入&#xff1a;https://code.visualstudio.com/Download&#xff0c;选择与你电脑相匹配的版本下载&…

java版本spring cloud 企业工程系统管理 工程项目管理系统源码

&#xfeff; Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下&#xff1a; 首页 工作台&#xff1a;待办工作、消息通知、预警信息&#xff0c;点击可进入相应的列表 项目进度图表&#xff1a;选择&#xff08;总体或单个&…

浅谈Java转义符\|

浅谈Java转义符\| 看一段程序 String t "a||b||c||d"; String[] temp t.split("\\|\\|"); System.out.println(temp.length); 主要是&#xff1a;"\\|\\|" 代表什么意思&#xff1f; 开始有点蒙&#xff0c;后来仔细一看明白了&#xff0…

易基因:单细胞DNA甲基化与转录组分析揭示猪生发泡卵母细胞成熟的关键调控机制|项目文章

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 在哺乳动物中&#xff0c;窦卵泡内的生发泡(germinal vesicle&#xff0c;GV) 卵母细胞可以保持数月或数年的静止状态。促黄体生成素(luteinizing hormone&#xff0c;LH)激增促进了减数…

740.删除并获得点数

目录 一、题目 二、代码 一、题目 740. 删除并获得点数 - 力扣&#xff08;LeetCode&#xff09; 二、代码 转换成打家劫舍问题 class Solution { public:int deleteAndEarn(vector<int>& nums) {int Max nums[0];//nums中的最大点数for(int i0;i<nums.size(…