[Daimayuan] 倒数第n个字符串(C++,进制)

news/2024/11/8 3:12:10/

给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L L L,从 L L L a a a 开始,以 1 1 1 为步长递增。例如当 L L L 3 3 3 时,序列为 a a a , a a b , a a c , . . . , a a z , a b a , a b b , . . . , a b z , . . . , z z z aaa,aab,aac,...,aaz,aba,abb,...,abz,...,zzz aaa,aab,aac,...,aaz,aba,abb,...,abz,...,zzz。这个序列的倒数第 2 2 2 个字符串就是 z z y zzy zzy。对于任意给定的 L L L,本题要求你给出对应序列倒数第 N N N 个字符串。

输入格式

输入在一行中给出两个正整数 L L L 1 ≤ L ≤ 6 1≤L≤6 1L6)和 N N N N ≤ 1 0 5 N≤10^5 N105).

注意:数据范围有修改!!!

输出格式

在一行中输出对应序列倒数第 N N N 个字符串。题目保证这个字符串是存在的。

样例输入

6 789

样例输出

zzzyvr

解题思路

把字符串看作 26 26 26进制:

0->a
1->b
2->c
...
25->z

然后把我们进制转换的辗转相除法拿出来:

int idx = len - 1;
while (num) {arr[idx--] = -(num % 26);num /= 26;
}

最后用zzz...z减去我们求得的 26 26 26进制串即可。

AC代码如下:

#include <iostream>
using namespace std;
const int max_len = 10;
const int max_num = 1e5;int arr[max_len];int main() {int len, num;cin >> len >> num;num--;int idx = len - 1;while (num) {arr[idx--] = -(num % 26);num /= 26;}for (int i = 0; i < len; i++) {printf("%c", char(arr[i] + 122));}return 0;
}

http://www.ppmy.cn/news/53105.html

相关文章

让我看看你们公司的代码规范都是啥样的?

大厂面试题分享 面试题库 前后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 web前端面试题库 VS java后端面试题库大全 我这里提供一份我自己在使用的项目代码规范&#xff0c;当然我这里比较简陋&#xff0c;有…

从0搭建Vue3组件库(六):前端流程化控制工具gulp的使用

随着前端诸如webpack&#xff0c;rollup&#xff0c;vite的发展&#xff0c;gulp感觉似乎好像被取代了。其实并没有&#xff0c;只不过它从台前退居到了幕后。我们仍然可以在很多项目中看到它的身影&#xff0c;比如elementplus、vant等。现在gulp更多的是做流程化的控制。 比如…

2023年能源与环境工程国际会议(CFEEE 2023)

会议简介 Brief Introduction 2023年能源与环境工程国际会议(CFEEE 2023) 会议时间&#xff1a;2023年9月1日-3日 召开地点&#xff1a;中国三亚 大会官网&#xff1a;CFEEE 2023-2023 International Conference on Frontiers of Energy and Environment Engineering 由三亚纵横…

单例模式的四种创建方式

前言 单例模式是日常开发中最常见的一种设计模式&#xff0c;常用来做为池对象&#xff0c;或者计数器之类的需要保证全局唯一的场景。 单例模式的目的是保证在整个程序中只存在一个对象实例&#xff0c;使用单例一个前提条件就是构造器私有化&#xff0c;不允许通过new 对象…

Side Window Filtering 边窗滤波

原理分析 通常用常规图像算法做检测类的算法需要将图像特征增强&#xff0c;其中就需要滤波&#xff0c;把噪点去掉&#xff0c;如果直接用滤波&#xff0c;像高斯滤波&#xff0c;中值滤波&#xff0c;均值滤波等等&#xff0c;不仅会把噪点过滤掉&#xff0c;也会把图像的一些…

【MySQL】慢查询+SQL语句优化 (内容源自ChatGPT)

慢查询SQL语句优化 1.什么是慢查询2.优化慢查询3.插入数据优化5.插入数据底层是什么6.页分裂7.页合并8.主键优化方式10.count 优化11.order by优化12.group by 优化13.limit优化14.update 优化15.innodb 三大特征 1.什么是慢查询 慢查询是指执行SQL查询语句所需要的时间较长&a…

京东T7架构师用470页就把微服务架构原理与开发实战文档讲完了

前言 最近几年软件开发方法层出不穷&#xff0c;微服务作为一种主流的架构模式一直热度不减。 为了帮助广大程序员们更好更快地理解微服务的概念&#xff0c;学习微服务在项目中的实践&#xff0c;本文全面阐述了微服务架构模式的特点、架构思路、设计理念、技术框架及具体的…

thinkphp6(tp6)初步小尝试(记录一下)

thinkphp6&#xff08;tp6&#xff09;初步小尝试&#xff08;记录一下&#xff09; 一、服务器环境二、创建tp6项目三、配置apache四、创建应用五、各应用入口六、简单模板 一、服务器环境 操作系统&#xff1a;ubuntu-22.04.2-live-server-amd64集成xampp(Apache MariaDB …