Chefstr2.py
Материал из DISCOPAL
Версия от 17:37, 4 мая 2022; StasFomin (обсуждение | вклад) (Новая страница: «<source lang="python"> import math def main(): symbols = {} alphabet = "abcdefghijklmnopqrstuvwxyz" for i in range(26): symbols[alphabet[i…»)
import math def main(): symbols = {} alphabet = "abcdefghijklmnopqrstuvwxyz" for i in range(26): symbols[alphabet[i]] = i input_str = input() k = int(input()) n = len(input_str) frequency = [0.0 for i in range(26)] operations = 1e6 k_pow = 1e6 ind = 1 lim = 3 * n / 4 while ind <= lim: cur_diff = 0 ks = math.ceil(float(n) / float(ind)) for i in range(ind): for j in range(26): frequency[j] = 0.0 j = i while j < n: frequency[symbols[(input_str[j])]] += 1 j += ind cur_diff += ks - max(frequency) if operations == cur_diff: if ks < k_pow: k_pow = ks elif cur_diff < operations: operations = cur_diff k_pow = ks ind += 1 print(f"{int(operations)} {k_pow}") main()
[ Хронологический вид ]Комментарии
Войдите, чтобы комментировать.