Совсем недавно Лёша начал изучать в школе английский язык. Как это часто бывает, внекоторых аспектах изучения этого предмета он достиг непревзойдённых высот, а в других,наоборот, столкнулся с определенными проблемами — Python(Питон)

Так, например, Лёша уже успел выучить
первые P букв латинского алфавита. Теперь перед ним стоит непростая задача — нужно
научиться красиво писать эти буквы, с чем у него как раз и возникли трудности.
Преподаватель рассказал своему ученику очень эффективную схему для улучшения каче-
ства написания букв. Сначала нужно выписать в тетрадь все известные буквы в алфавитном
порядке. Далее нужно сделать то же самое, но только выписывать каждую букву по два раза
подряд. На следующем этапе нужно поступать точно так же, только выписывать буквы по
три подряд. Так продолжать, пока не станет хорошо получаться.
Таким образом, если, например, Лёша выучил первые три буквы алфавита, то в тетрадь
он будет выписывать строку следующего вида: abcaabbccaaabbbcccaaaabbbbcccc…
Естественно, одни буквы Лёше нравятся больше, другие меньше. Как оказалось, ему
нравятся только те буквы, которые встречаются на обложке учебника по английскому языку.
Лёше требуется написать в тетрадь строку заданного вида длиной в R букв. Он уже
выписал (L − 1) букву. И теперь его интересует вопрос: сколько ещё букв, которые ему
нравятся, предстоит ему выписать. Напишите программу, позволяющую ответить на вопрос,
котоый тревожит Лёшу.
Формат входного файла
В первой строке входного файла записано одно целое число: P — количество букв, кото-
рые Лёша уже успел выучить (1 ≤ P ≤ 26).
Во второй строке записано целое число K — количество букв, изображённых на обложке
учебника (1 ≤ K ≤ 50).
В следующей строке записаны через пробел ровно K маленьких букв латинского алфа-
вита, которые изображены на обложке учебника.
В четвёртой строке записаны два целых числа — R и L (1 ≤ L ≤ R ≤ 10^18).
Формат выходного файла
В выходной файл требуется вывести одно целое число — количество букв, которые Лёше
нравятся, и которые ещё осталось ему выписать.
Примеры
Input.Txt
4
3
a b d
1 4
Output.txt
3
Input.txt
2
4
a c c a
8 11
Output.txt
2

with open("Input.txt") as infile:
    data = infile.read().split()
with open("Output.txt", "w") as outfile:
    outfile.write(sum(''.join(a * i for i in range(1, int(data[-1])//int(data[0]) + 2) for a in data[2:-2])[int(data[-2]):int(data[-1])].find(l) for l in data[2:-2]))

Leave a Comment