codeforces1335B. Construct the String

题目如下

题目大意
n是每个字符串的长度,a是其中要求的子字符串的长度,b是子字符串中不同字符的数量,三个条件,构造出这样的字符串
我们来分析一下,
我们要构造出这样的字符串,主要是子字符串的构造,先构造出一个符合题目条件的子字符串,再通过循环使得整个字符串达到目标长度即可。
那么我们先来看子字符串的构造,在长度为a的子字符串中要求有b个不同字符,那么我们不妨从字母a开始,依次往后顺,直到达到b所需的字母个数,一般来说a总是大于b,所以在达到b个数的不同字母后子字符串剩下的个数就用出现过的字符来补全;此时我们还要考虑a与b的大小关系,特殊的a=b的情况就不用补全

完成了子字符串的构造,我们再看怎么用子字符串的重复来构成整个字符串,先计算n / a获得完整的子字符数量并打印,剩下的再按个数补全

最后输出完每个字符串记得要换行

完整代码如下

有点复杂,要好好想一想,对我来说,加油

posted @ 2025-04-19 00:03  sirro1uta  阅读(12)  评论(0)    收藏  举报