Бесплатный урок с нашим репетитором!

Узнать подробнее

Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Посмотреть все вопросы нейросети
Бесплатный пробный урок с репетитором

Узнай больше про репетиторов Новой Школы и запишись на бесплатный пробный урок. Мы проверим твой уровень знаний и составим план обучения по любому предмету и классу

Вопрос от Анонимного юзера 22 октября 2025 02:07

Задача 1 Есть строка, в которой записана последовательность из чисел 1 и 11. Получите и выведите упорядоченный массив из чисел этой последовательности. Ввод Вывод 1 11 1 11 1 1 1 1 11 11

Ответ нейросети

22 октября 2025 02:07

Задача понятна: дано перечисление чисел 1 и 11. Нужно вывести упорядоченный по возрастанию массив этих же чисел. Так как возможны только два разных значения, удобнее посчитать их количество и вывести в нужном порядке: сначала все 1, затем все 11.

Пошаговое решение:

  1. Разделить входную строку на элементы по пробелам.
  2. Подсчитать сколько встретилось чисел 1 и сколько 11.
  3. Вывести сначала столько единиц, сколько их нашлось, потом столько двоек-одинаковых 11.
  4. Соединить числа пробелами в одну строку.

Пример:

  • Ввод: 1 11 1 11 1
  • Подсчет: c1 = 3, c11 = 2
  • Вывод: 1 1 1 11 11

Сложность:

  • Временная: O(n), где n — число элементов во входной строке.
  • Память: O(1) дополнительно (не считая входные данные и итоговую строку).

Простой пример реализации на Python (помогает понять идею, можно адаптировать под другой язык):

  • Вариант 1: читает всю строку из входа def sort_sequence(s): tokens = s.strip().split() c1 = 0 c11 = 0 for t in tokens: if t == '1': c1 += 1 elif t == '11': c11 += 1 else: # здесь можно обрабатывать ошибку, но согласно условию ведомо, что есть только 1 и 11 pass return ' '.join(['1'] * c1 + ['11'] * c11)

Пример использования

inp = "1 11 1 11 1" print(sort_sequence(inp)) # вывод: 1 1 1 11 11

  • Вариант 2: компактно через счётчик и чтение из stdin (если задача приходит как файл или через поток): import sys

def main(): s = sys.stdin.read().strip() tokens = s.split() c1 = tokens.count('1') c11 = tokens.count('11') out = ['1'] * c1 + ['11'] * c11 print(' '.join(out))

if name == "main": main()

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

Задай свой вопрос

Напиши любую задачу или вопрос, а нейросеть её решит

Похожие вопросы 15

Бесплатно Мобильное приложение ГДЗ
Мобильное приложение ГДЗ

Задавай вопросы искуcственному интеллекту текстом или фотографиями в приложении на iPhone или Android

qr-codegoogle-playapp-store

Саша — ассистент в телеграмме

Задача 1 Есть строка, в которой записана последовательность из чисел 1 и 11. Получите и выведите упорядоченный массив из чисел этой последовательности. Ввод Вывод 1 11 1 11 1 1 1 1 11 11
Задача понятна: дано перечисление чисел 1 и 11. Нужно вывести упорядоченный по возрастанию массив этих же чисел. Так как возможны только два разных значения, удобнее посчитать их количество и вывести в нужном порядке: сначала все 1, затем все 11. Пошаговое решение: 1) Разделить входную строку на элементы по пробелам. 2) Подсчитать сколько встретилось чисел 1 и сколько 11. 3) Вывести сначала столько единиц, сколько их нашлось, потом столько двоек-одинаковых 11. 4) Соединить числа пробелами в одну строку. Пример: - Ввод: 1 11 1 11 1 - Подсчет: c1 = 3, c11 = 2 - Вывод: 1 1 1 11 11 Сложность: - Временная: O(n), где n — число элементов во входной строке. - Память: O(1) дополнительно (не считая входные данные и итоговую строку). Простой пример реализации на Python (помогает понять идею, можно адаптировать под другой язык): - Вариант 1: читает всю строку из входа def sort_sequence(s): tokens = s.strip().split() c1 = 0 c11 = 0 for t in tokens: if t == '1': c1 += 1 elif t == '11': c11 += 1 else: # здесь можно обрабатывать ошибку, но согласно условию ведомо, что есть только 1 и 11 pass return ' '.join(['1'] * c1 + ['11'] * c11) # Пример использования inp = "1 11 1 11 1" print(sort_sequence(inp)) # вывод: 1 1 1 11 11 - Вариант 2: компактно через счётчик и чтение из stdin (если задача приходит как файл или через поток): import sys def main(): s = sys.stdin.read().strip() tokens = s.split() c1 = tokens.count('1') c11 = tokens.count('11') out = ['1'] * c1 + ['11'] * c11 print(' '.join(out)) if __name__ == "__main__": main() Если у вас другие требования к формату ввода/вывода (например, нужно писать в одну строку без лишних пробелов, или использовать другой язык), скажите — адаптирую под них.