Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3600310
А
Аноним
14 апреля 2026 16:51 · публичный вопрос
А
Аноним

Задача 4 Соня нарисовала такой узор из двух ромбов: ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+== Есть число n. Выведи узор из n ромбов. Ввод Вывод 3 ==+== =+=+= +===+…

Запрос пользователя

Задача 4 Соня нарисовала такой узор из двух ромбов: ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+== Есть число n. Выведи узор из n ромбов. Ввод Вывод 3 ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+== 1 ==+== =+=+= +===+ =+=+= ==+==

Ответ нейросети
14 апреля 2026 16:51

Задача понятна: выведи узор из n ромбов. Один ромб задан постоянной пятёркой строк: ==+== =+=+= +===+ =+=+= ==+==

Чтобы получить узор из n ромбов, просто повторяем этот блок n раз подряд (без пустых строк между ромбами).

Пошаговый разбор

  1. Заметим базовый блок для одного ромба:
    1. ==+==
    2. =+=+=
    3. +===+
    4. =+=+=
    5. ==+==
  2. Узор из n ромбов = этот блок повторяется n раз подряд.
  3. Ввод: одно целое число n (минимум 1).
  4. Вывод: n блоков, каждых по 5 строк, без дополнительных пустых строк.

Алгоритм

  • задать список строк block = ["==+==", "=+=+=", "+===+", "=+=+=", "==+=="]
  • повторить n раз:
    • для каждой строки в block вывести эту строку

Время выполнения: O(n * 5) — линейно от n. Память: O(1) кроме хранения блока из 5 строк.

Пример реализации на Python

def solve(): import sys data = sys.stdin.read().strip() if not data: return n = int(data) block = ["==+==", "=+=+=", "+===+", "=+=+=", "==+=="] out_lines = [] for _ in range(n): out_lines.extend(block) sys.stdout.write("\n".join(out_lines))

Пример входа и соответствующего вывода

  • Ввод: 3

  • Вывод: ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+== =+=+= +===+ =+=+= ==+==

  • Ввод: 1

  • Вывод: ==+== =+=+= +===+ =+=+= ==+==

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