#P12775. [POI 2018/2019 R1] 子串 Subsequences
[POI 2018/2019 R1] 子串 Subsequences
题目背景
翻译来自于 LibreOJ。
题目描述
题目译自 XXVI Olimpiada Informatyczna – I etap Podciągi
请你写一个程序,对于给定的自然数 ,生成一个不太长、字符种类不多的字符串,使它正好有 个不同的子序列。
具体来说,假设字符串 由字符 组成。它的子序列是指形如 的任意字符串,其中 且 。特别地,空字符串(长度为 )也是 的子序列。两个子序列若表示的字符串不同,就视为不同。例如,字符串 ioi
有 个不同子序列:空字符串以及 i
、o
、ii
、io
、oi
、ioi
。注意,单字符子序列 i
在 ioi
中出现了两次,但只统计一次。
输入格式
输入的第一行是一个自然数 ,表示输入数据组数。
接下来的 行,每行一个自然数 ,表示你生成的字符串需要有的不同子序列数量(包括空子序列)。
输出格式
输出 行,每行对应一组输入数据的答案。每行是一个字符串,最多包含 个字符,可以使用数字以及英文大小写字母(这些字符在比较子序列时互不相同)。该字符串需恰好有 个不同子序列。
若有多个正确答案,输出任意一个即可。
若无满足条件的答案,输出 !
。
5
7
10
42
15
512
ioi
Mmmmm
ERRATA
0000FF
R3GuLaM1N
提示
详细子任务附加限制及分值如下表所示。
子任务 | 附加限制 | 分值 |
---|---|---|
每个 的质因数分解之和不超过 | ||
每个 是两个 的幂之差 | ||
的二进制不以 01 或 010 结尾,且无相邻 0 |
||
,随机生成 | ||
,随机生成 | ||
,非随机生成 |