#
#
# @param s string字符串 s.size() <= 1e5
# @param k int整型 k <= s.size()
# @return int整型
#
class Solution:
def turn(self , s , k ):
# write code here
# 每个子串里,每个字母前面有几个比自己大的,就交换几次
# 例:‘abc’ 交换0+1+2=3次
steps = 0
for i in range(k):
num = [0] * 26
for j in range(i, len(s), k):
index = ord(s[j]) - ord('a')
num[index] += 1
for m in range(index):
steps += num[m]
return steps
# 超时
# import math
# res = 0
# s_list = list(s)
# for j in range(math.floor(len(s_list)/k)):
# for i in range(len(s_list)-k):
# if s_list[i] < s_list[i+k]:
# s_list[i], s_list[i+k] = s_list[i+k], s_list[i]
# res += 1
# return res