字符串的构造

Construction of a string

给你三个正整数n、a和b。您必须构造一个长度为 n 的字符串 s,该字符串由小写拉丁字母组成,使得每个长度为 a 的子字符串恰好有 b 个不同的字母。

请提供解决方法的提示。请不要解决问题。我应该使用数组吗?

没有。这是一个简单的问题,不需要使用任何外部存储器,如数组或其他。

你只需要迭代循环并生成字符,这样你就可以按照给定的条件构造一个字符串。 当您生成字符时,您可以使用每次迭代的 ASCII 值和循环来按顺序打印字符(不是随机的,否则您可能会混淆)。


同样,无需考虑每个子字符串中正好出现 b 个字符,因为您每次只生成 b 个字符。

希望得到您的理解


示例:(在 C++ 中)

for(int i = 0;  i < n; ++i)
 cout<<char('a'+i%b);