Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/55: Рейтинг темы: голосов - 55, средняя оценка - 4.58
2 / 2 / 0
Регистрация: 03.05.2020
Сообщений: 202

Строка: Найти максимальную по длине подстроку данной строки такую, что каждый символ встречается в ней не более k раз.

10.08.2020, 16:34. Показов 11456. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В этой задаче Вам требуется найти максимальную по длине подстроку данной строки такую, что каждый символ встречается в ней не более k раз.

Входные данные

В первой строке даны два целых числа n и k (1 ≤n≤ 100000, 1 ≤k≤n) , где n — количество символов в строке. Во второй строке n символов — данная строка, состоящая только из строчных латинских букв.

Выходные данные

В выходной файл выведите два числа — длину искомой подстроки и номер её первого символа. Если решений несколько, то выберите самую левую подходящую подстроку.

Примеры
Ввод
Вывод
3 1
abb
2 1
5 2
ababa
4 1
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.08.2020, 16:34
Ответы с готовыми решениями:

Строки: Дана строка. Определить, сколько раз в ней встречается символ, введенный пользователем
Задача: Дана строка. Определить, сколько раз в ней встречается символ, введенный пользователем. Вот что получилось, но чет не...

Если символ в данной строке встречается один раз, в конце строки добавлять ещё раз этот символ
Помогите с задачей на C# Ввести строку символов. Если символ в данной строке встречается один раз, в конце строки добавлять ещё раз этот...

Дана строка. Подсчитать, сколько раз в строке встречается каждый символ. Результат вывести в формате: для строки 'howman
Дана строка. Подсчитать, сколько раз в строке встречается каждый символ. Результат вывести в формате: для строки 'howmanytimes' {1: , 2: }

1
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
10.08.2020, 17:48
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
n, k = map(int, input().split())
s = input()
# словарь с ключами (буквы)
ss = dict.fromkeys(s, 0)
# tl - временная левая граница окна
# tr - временная правая граница окна
# grl - левая граница искомого отрезка
# grr - правая граница искомого отрезка
tl, tr,grl, grr = 0, 0, 0, 0
while tr < n:
    # если кол-во текущей буквы меньше "k", 
    # увеличиваем кол-во данной буквы на 1 
    # и сдвигаем правую границу в право
    # тоже на 1, иначе
    # перемещаем левую границу
    if ss[s[tr]] < k:
        # если длина текущего отрезка
        # стала больше - приравниваем эту длину
        # длине искомого отрезка
        if tr - tl > grr - grl :
            grr, grl = tr, tl
        ss[s[tr]] += 1
        tr += 1
    else:
        tl = tr - k + 1
        # для новой границы создаем словарь на
        # основе старого (для экономии времени)
        ss = dict.fromkeys(ss, 0)
print(grr - grl + 1, grl + 1)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.08.2020, 17:48
Помогаю со студенческими работами здесь

Ввести произвольную строку, посчитать сколько раз в ней встречается каждый символ
Задачу я решил, но возникла загвоздка, которую я уже не в силах устранить... И загвоздка в следующем: код правильно подсчитывает сколько...

Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например : Пусть исходная строка Str: "x
№4 Дана строка текста. Определить сколько раз встречается каждый символ в строке. Например : Пусть исходная строка Str: &quot;x w x y x...

Строка: Подсчитать, сколько раз встречается в данной строке указанный символ
Здравствуйте, у меня тут такие задачи надо решить. Я новичок, и не очень понимаю всю суть программы.Помогите решить 2 задачки: 1. Целое...

Дана строка. Определить, сколько раз в ней встречается символ, введенный пользователем
Помогите пожалуйста решить задачку на си. Знаю как посчитать количество всех символов в строке, а вот сколько раз встречается введённый...

Определить сколько раз в данной символьной переменной А встречается каждый символ из данного символьного ряда В
Определить сколько раз в данной символьной переменной А встречается каждый символ из данного символьного ряда В.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru