Задача понятна: для каждого введённого слова нужно напечатать это слово три раза подряд без пробелов и разнести результат по одной строке.
Пошаговое решение
- Цель: для каждого из n слов вывести слово, повторённое трижды и слито без разделителей.
- Ввод: сначала число n, затем n слов (по одному на строке или через пробелы; в рамках обычной задачи — по строкам).
- Алгоритм:
- Прочитать целое число n.
- Повторить n раз:
- Прочитать очередное слово w.
- Вычислить результат r = w * 3 (или w + w + w).
- Вывести r на новой строке.
- Сложность: если суммарная длина входных слов равна L, то время O(L) и память O(1) помимо входных данных, так как формирование каждого r требует прохода по тройному слову.
Пояснение на примерах
Пример 1: Ввод: 2 пррривет птичка Вывод: пррриветпррриветпррривет птичкаптичкаптичка
Пример 2: Ввод: 3 Лёшенька хоррроший мальчик Вывод: ЛёшенькаЛёшенькаЛёшенька хорррошийхорррошийхоррроший мальчикмальчикмальчик
Готовый простейший код (Python 3)
- Пример реализации:
def solve(): import sys data = sys.stdin.read().strip().split() if not data: return n = int(data[0]) words = data[1:1+n] out = [] for w in words: out.append(w * 3) sys.stdout.write("\n".join(out))
if name == "main": solve()
Замечания
- Если слова идут по строкам и каждый слов на новой строке, этот подход работает корректно.
- Если в вводе есть лишние пробелы или пустые строки, использование split() по whitespace всё равно корректно выделит слова.
- Для других языков можно использовать аналогичную логику: для каждого слова вывести трижды повторённое слово без разделителей.