Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3577716
А
Аноним
03 марта 2026 12:07 · публичный вопрос
А
Аноним

Механический попугай Лёшенька заглючил и каждое слово повторяет трижды. Есть число n и n слов. Выведи n строк с этими словами, записанными 3 раза подряд слитно.

Ответ нейросети
03 марта 2026 12:07

Задача понятна: дано число n и n слов. Нужно вывести n строк, где каждое слово повторено три раза подряд без пробелов (например, "слово" -> "словословослово").

Подробный разбор и решение

  1. Что делаем
  • читаем целое число n.
  • читаем далее n слов.
  • для каждого слова выводим его повторение три раза подряд: word * 3 (или word + word + word).
  • каждый результат выводим в отдельной строке.
  1. Алгоритм
  • Ввод: читаем все данные и разбиваем на токены (слова).
  • Первый токен приводим к целому n.
  • Для i от 0 до n-1 берем i-ый словарь токенов после первого: w = tokens[1 + i].
  • Выводим строку: w повторяется три раза подряд: w3 = w * 3.
  • Печатаем w3 на своей строке.
  1. Сложность
  • По времени: O(S), где S — суммарная длина всех слов (нужно пройтись по каждому слову и склеить три раза).
  • По памяти: O(1) дополнительно помимо входных данных (если считать выходной буфер как часть вывода, то O(n) на формирование строк).
  1. Реализация на Python (проверенный и надёжный вариант)
  • Преподнесён в виде одного кода, который корректно работает независимо от того, как именно разделены слова во входе (на одной строке или на нескольких).

Пример кода (Python 3):

Python 3

import sys

def main(): data = sys.stdin.read().split() # разбиваем вход на токены по любым пробелам и строкам if not data: return n = int(data[0]) out_lines = [] # берём следующие n слов (если их меньше, используем пустые строки для отсутствующих) for i in range(n): w = data[1 + i] if 1 + i < len(data) else "" out_lines.append(w * 3) sys.stdout.write("\n".join(out_lines))

if name == "main": main()

Пояснение к примеру: Вход: 4 hello world a BC Выход: hellohellohello worldworldworld aaa BCBCBC

  1. Варианты входных форматов
  • Если слова точно идут по одной строке или разделяются пробелами — приведённый код корректно обработает их.
  • Если хочется простой вариант по строкам (читаем n, затем читаем по одной строке на каждое слово):
    • можно использовать цикл чтения строк: для _ in range(n): w = input().strip(); print(w * 3)
    • но такой вариант зависит от того, как именно организован вход в задаче.
  1. Примечания
  • Если нужно отдельно обрабатывать ошибки ввода (мало слов, неверный формат n и т. д.), можно добавить проверки, но для задач ГДЗ обычно предполагается корректный ввод.
  • Для других языков реализации аналогично: в JavaScript можно сделать через массив tokens и выводить каждый token повторенный три раза, в Java — через чтение через Scanner и вывод через System.out.println.

Если хочешь, могу добавить альтернативные реализации на другой язык (Java, C++, JavaScript) или привести ещё несколько примеров ввода–вывода.