Назад к вопросам
amoCRM
Middle
7
Входные данные передаются в виде строки, например '1 2 3 4 3 2 1'. Напишите оптимальное решение по сложности.
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Если входные данные — строка с числами, например '1 2 3 4 3 2 1', и нужно выполнить задачу оптимально по времени, то обычно стоит:
- Разбить строку на отдельные числа.
- Обработать их за один проход, используя подходящий алгоритм (например, подсчет частот, поиск максимума и т.п.).
Пример на Python, который считает частоту каждого числа за O(n):
input_str = '1 2 3 4 3 2 1'
numbers = map(int, input_str.split())
frequency = {}
for num in numbers:
frequency[num] = frequency.get(num, 0) + 1
print(frequency)
Такой подход — линейный по времени и оптимален для большинства задач с обработкой последовательности чисел.