假设我们有一个数字n;我们必须检查长度为n + 1的小写字符串,以便在任何位置上的字符在字典上都应比其紧邻的下一个字符大。
因此,如果输入为15,则输出为ponmlkjihgfedcba。
为了解决这个问题,我们将遵循以下步骤-
temp_str:=空字符串
额外:= n mod 26
如果多余> = 1,则
对于0到25范围内的j,执行
temp_str:= temp_str + str [j]
temp_str:= temp_str + str [i]
对于范围在26-(extra + 1)到25之间的i
计数:= n / 26(整数除法)
对于范围1中的i计数+ 1,
返回temp_str
让我们看下面的实现以更好地理解-
def show_string(n, str): temp_str = "" extra = n % 26 if (extra >= 1) : for i in range( 26 - (extra + 1), 26): temp_str += str[i] count = n // 26 for i in range(1, count + 1) : for j in range(26): temp_str += str[j] return temp_str n = 15 str = "zyxwvutsrqponmlkjihgfedcba" print(show_string(n, str))
15
输出结果
ponmlkjihgfedcba