codeforces 1328 B. K-th Beautiful String

2023-05-16

在这里插入图片描述
在这里插入图片描述

题意:

就是找到第 k k k 个全排列的字符串

通过找规律,第一个 b b b 在倒数第二位有 1 1 1 个,倒数第三位 2 2 2 个,倒数第四位三个,第二个 b b b 的位置就是 k − 1 − 2 − 3 − . . . k-1-2-3-... k123... 剩下的数字倒着数。这样位置就能确定了。然后倒着输出即可。

AC代码;

const int N = 100010;
int n, m, k;
int res, tmp, cnt;
ll sum[N];
char ans[N];
int pos, p1, p2;
void init()
{
	sum[0] = 0;
	rep(i, 1, N - 1)
		sum[i] = i + sum[i - 1];
}

int main()
{
	int t;
	sd(t);
	init();
	while (t--)
	{
		sdd(n, k);
		p1 = 1, p2 = 0;
		pos = lower_bound(sum + 1, sum + N, k) - sum;
		p1 += pos;
		if (sum[pos] >= k)
			pos--;
		k -= sum[pos];
		p2 += k;
		rep(i, 1, p2 - 1)
			ans[i] = 'a';
		ans[p2] = 'b';
		rep(i, p2 + 1, p1)
			ans[i] = 'a';
		ans[p1] = 'b';
		rep(i, p1 + 1, n)
			ans[i] = 'a';
		per(i, n, 1)
			printf("%c", ans[i]);
		puts("");
	}
	return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

codeforces 1328 B. K-th Beautiful String 的相关文章

  • 将带撇号的字符串传递给辅助方法无法正确显示

    我正在使用 Rails 教程中的辅助方法 它将两个字符串连接在一起 以便在视图中的标题选择器中使用 它工作得很好 除非字符串中有撇号 当 group name 包含撇号时 结果如下 这是方法 app helpers application
  • 如何获取字符串中所有匹配项的位置?

    我有一份文本文档和一个查询 查询可能超过一个单词 我想找到文档中所有查询出现的位置 我想到了documentText indexOf query 或使用正则表达式 但我无法使其工作 我最终采用以下方法 首先 我创建了一个名为的数据类型Que
  • 使用自定义比较器在 Java 中创建 SortedMap

    我想创建一个TreeMap在 Java 中具有自定义排序顺序 排序后的键是字符串 需要根据第二个字符进行排序 这些值也是字符串 示例地图 Za FOO Ab Bar 您可以像这样使用自定义比较器 Comparator
  • 获取插入符位置上的当前单词

    如何通过当前插入符号位置获取 textarrea 中的单词 我尝试了类似的操作 但是这仅返回单词的第一个字母到插入符号位置的字符 例如 如果光标位于fo and o它返回fo并不是foo正如预期的那样 Fo o bar 不等于 bar fo
  • 如何使用 str.replace 一次替换多个对? [复制]

    这个问题在这里已经有答案了 目前我使用以下代码进行替换 有点麻烦 df1 CompanyA df1 CompanyA str replace df1 CompanyA df1 CompanyA str replace df1 Company
  • PHP中的“@/path/to/a/file”是什么意思?

    我偶然发现以下代码示例 image file path code tmhOAuth gt request POST https upload twitter com 1 statuses update with media json arr
  • 检查字符串是否以 XXXX 开头

    我想知道如何在Python中检查字符串是否以 hello 开头 在 Bash 中我通常这样做 if string hello then do something here fi 我如何在Python中实现同样的效果 aString hell
  • 使用 System.out.println 显示特殊字符

    我在将带有特殊字符的文本从网络服务发送或显示到数据库时遇到问题 在我的 Eclipse 上 我已将字符编码设置为 UTF 8 但它仍然不允许我显示字符 例如 像下面的代码一样简单的打印 String test System out prin
  • C++ 从文件中读取字符串

    我试图将字符串直接存储到一个文件中 以便稍后在 C 中读取 基本上 对于整个范围 我试图将带有字符串变量的对象数组存储在文件中 并且这些字符串变量将通过类似 object 的内容读取 0 字符串 然而 每次我尝试读取字符串变量时 系统都会给
  • 如何在C中将一个字符串拆分为2个字符串

    我想知道如何获取 1 个字符串 用分隔符 例如空格 将其拆分为 2 个字符串 并将这 2 个部分分配给 2 个单独的字符串 我尝试过使用strtok 但无济于事 include
  • 将括号子集映射到字符

    我正在尝试创建一个 Scala 方法 该方法将采用一个父括号组 表示为字符串 然后将每个括号子组映射到不同的字母 然后它应该将它们放入它返回的映射中 所以基本上我调用以下方法 如下所示 val s 2 x 3 6 val map mapPa
  • python 中的 F 字符串前缀给出语法错误[重复]

    这个问题在这里已经有答案了 我有一个名为 method 的变量 它的值是 POST 但是当我尝试运行时print f method method is used 它不断在最后一个双引号处给出语法错误 我找不到它这样做的原因 我正在使用 py
  • Android 中 DatatypeConverter.printHexBinary(byte[] array) 和 DatatypeConverter.parseHexBinary(String str) 的替代方案

    有什么替代方案DatatypeConverter printHexBinary byte array and DatatypeConverter parseHexBinary String str 在安卓中 Android 没有 class
  • 如何检测字符串字节编码?

    我读取了大约 1000 个文件名os listdir 有些是UTF8编码 有些是CP1252 我想将它们全部解码为 Unicode 以便在我的脚本中进一步处理 有没有办法让源编码正确解码为 Unicode Example for item
  • 在 Scala 中实现不区分大小写比较的字符串类

    我有许多带有不区分大小写的字段的类 我想将这些类的实例放入 HashMap 中 并通过不区分大小写的字符串查找它们 我不是每次想通过字符串索引实例或通过字符串查找实例时都使用 toLowerCase 而是尝试将此逻辑封装在 CaseInse
  • .Net Core 中 String 默认不可序列化吗?

    我正在查看其他的 Fortify 静态分析安全测试 SAST 扫描报告 以识别和抑制误报 应用程序框架是C NET Core SAST 报告部分内容如下 Method1 在第 111 行将不可序列化的对象存储为 HttpSessionSta
  • String.intern() 线程安全吗

    我想在Java中使用 String intern 来节省内存 对具有相同内容的字符串使用内部池 我从不同的线程调用这个方法 这是个问题吗 对你的问题的简短回答是肯定的 它是线程安全的 但是 您可能需要重新考虑使用此工具来减少内存消耗 原因是
  • 在大文件中查找重复字符串

    一个文件包含大量 例如100亿 字符串 您需要查找重复的字符串 您有 N 个可用系统 您将如何找到重复项 埃里克森的答案可能是提出这个问题的人所期望的 您可以将 N 台机器中的每台机器用作哈希表中的一个存储桶 对于每个字符串 按顺序说出字符
  • std::regex 转义正则表达式中使用的特殊字符

    我是字符串来创建一个std regex FILE 作为单元测试的一部分 检查一些打印文件名的异常输出 在 Windows 上失败并显示 regex error error escape 表达式包含无效的转义字符或尾随转义 因为 FILE 宏
  • 使用 Javascript 删除字符串的最后一个字符

    我有一个DIV与一些字符 如何在每次单击时删除文本中的最后一个字符DIV itself 删除第一个字符 div on click function this text function index text return text repl

随机推荐

  • 基于51单片机实现时间显示及闹钟设置

    文章目录 一 介绍二 原理三 步骤四 结果五 结果分析六 总结 一 介绍 本次为大学中的一次创新实验 xff0c 当时老师叫我自己拿个单片机去玩 xff0c 为了赶时间就做了个简单的时间显示和闹钟设置 xff0c 因为比较简单所以也把代码附
  • vim 文本替换

    常规替换 n1 span class token punctuation span n2s hello world g span class token operator span 用world替换文件n1行到n2行所有的hello n1
  • 51单片机定时器工作方式1、2原理详解

    写在前面 1 本篇博文旨在帮助那些像我一样刚入门51单片机 xff0c 如果你对定时器有一定了解 xff0c 但是其中的的工作方式不能理解 xff0c 那么这篇文章很适合你 xff0c 如果你是大神的话 直接绕行吧 2 我在学习的过程中由于
  • 虚拟机Ubuntu连接不了网络的解决方法

    昨晚上虚拟机ubuntu中网络还是正常使用的今天准备安装一个nfs服务发现无法使用apt工具了 xff0c 然后才发现虚拟机没网了 xff0c 然后在百度试了两种方法没有效果 方法1 xff1a 尝试输入以下命令来解决 xff1a span
  • 安装Anaconda并配置环境变量

    安装Anaconda并配置环境变量 下载安装配置变量 下载安装 anaconda官网 xff1a https www anaconda com 选择需要的版本进行下载 https www anaconda com products dist
  • OrCAD 导出 BOM 表

    BOM 表简介 BOM表是什么呢 xff1f 它的全称 xff08 Bill Of Material xff09 即物料清单的意思 顾名思义 xff0c 一个产品的BOM说明了这个产品总共需要多少零配件来组装 所有的PCBA制造商都需要根据
  • Allergo 导出光绘(Gerber)文件及坐标文件

    文章目录 导出 Gerber光绘介绍设置输出文件夹和路径生成钻孔信息导出光绘 ArcworkGerber 生成报错 database has error 导出坐标文件坐标文件介绍生成坐标文件 参考资料 导出 Gerber 光绘介绍 Gerb
  • cpp-http 库的使用

    文章目录 前言 96 cpp http 96 库简介 96 cpp http 96 库使用介绍http 客户端搭建步骤http 服务端搭建步骤 96 cpp http 96 库示例服务端实现客户端实现 示例下载关于示例代码编译出错的问题 参
  • esp32 开发环境搭建

    文章目录 前言提示构建工具安装 IDF设置 idf 目标平台 设定环境变量同时安装多个版本安装 idf 和 tools修改环境变量 参考资料ESP IDF 快速入门编译 ESP AT 工程idf py build 出现cmake faile
  • Latex之给字符上加横线、波浪线、^等

    加 号 xff1a hat x 加波浪线 xff1a widetilde x 加两个点 xff1a ddot x 以上几种对应结果 xff1a 如果是在正文中 xff1a 要在左右带上 公式添加 xff1a overline X 61 fr
  • linux操作系统远程登录拷贝

    1 SSH远程登录 xff1a 命令格式 xff1a ssh 用户名 64 IP地址 命令选项ssh远程登录scp远程拷贝 说明 SSH是专门为远程登录提供的一个协议 xff0c 常用于远程登录 xff0c 使用前需要安装相应的服务和客户端
  • VMware的Debian11如何删除磁盘文件,并在扩充原有磁盘

    删除原有磁盘分区 1 在 虚拟机 gt 设置 中 xff0c 选中需要删除的磁盘分区文件 xff0c 点击 移除 xff1b 2 如果此磁盘已设置开机自动挂载 xff0c 需要取消挂载 xff1a xff08 1 xff09 在 root
  • 计算机视觉思维导图

    计算机视觉思维导图 最近整理的计算机视觉思维导图分享给大家 xff0c 来源于各个教学视频以及博客 xff0c 可以当做字典使用 xff0c 知道整个行业的方向及相关技术 xff0c 按照自己理解的视觉处理任务顺序排序
  • centos8安装docker错误解决

    安装出现 Problem problem with installed package buildah Last metadata expiration check 0 08 17 ago on Sat 20 Feb 2021 12 43
  • c中输入一个十进制数,输出它的八进制二进制以及十六进制

    代码 xff1a span class token macro property span class token directive keyword include span span class token string lt stdi
  • 如何删除Alibaba PC Safe Service

    如何删除Alibaba PC Safe Service Alibaba PC Safe Service是AlibabaProtect服务项目 xff0c Alibaba PC Safe Service这个东西在任务管理器里你是如论如何都关不
  • Yapi-从零搭建接口管理平台

    介绍 旨在为开发 产品 测试人员提供更优雅的接口管理服务 可以帮助开发者轻松创建 发布 维护 API xff1b 官网网址 xff1a YApi 教程 hellosean1025 github io 搭建 其实官网有明确的搭建方法 xff0
  • Sql 数据库细节全解(icelei讲sql)

    磊哥哥讲Sql 一 what who defined1 数据库whatever2 引言导入 二 database and tables guy1 Basic element project definition2 template data
  • 编写一个Shell函数检查Linux系统中某文件的权限是否小于一个值

    我编写了一个Shell函数 xff0c 使用这个函数需要传两个参数 xff1a 文件绝对路径和一个三位整数 通过这个函数可以检查文件权限是否小于等于你给定的值 submod export filepath 61 1 export maxmo
  • codeforces 1328 B. K-th Beautiful String

    题意 xff1a 就是找到第 k k k 个全排列的字符串 通过找规律 xff0c 第一个 b b b 在倒数第二位有