|
0 / 0 / 0
Регистрация: 03.07.2023
Сообщений: 4
|
|
Поиск максимального числа в каждых К числах N потока данных03.07.2023, 11:00. Показов 1334. Ответов 18
Добрый день, друзья.
Прохожу курс питона, тема линейное программирование. Несколько дней уже бьюсь, не могу решить следующую задачу: Напиште решение задачи на Python. Условие задачи: пользователь вводит числа N и K, (K < N), затем вводит последовательно N чисел. Нужно вывести числа, которые отвечали бы условиям: первое число - это сумма первых K чисел из вводимых N. Второе число - это сумма K чисел из вводимых N со смещением 1 и так далее. Пример: Вводятся числа N равное 5 и K равное 3. Затем вводятся 5 чисел 1, 2, 3, 1, 4 ( В ответе будут числа: 6, 6, 8 (т.е 1+2+3, 2+3+1, 3+1+4)) Найти максимальное число среди каждых K чисел. Решить задачу без использования списков, т.е. работать в потоке, памяти нет, чисел много.
0
|
|
| 03.07.2023, 11:00 | |
|
Ответы с готовыми решениями:
18
Поиск максимального потока Поиск максимального потока в графе Алгоритм Гомори-Ху. Поиск максимального потока |
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
||
| 03.07.2023, 14:20 | ||
|
Или тут максимально по упоротому добавлять результаты к одной и той же строке? Добавлено через 5 минут Хотя не, даже так не получится. Сдается мне, условие про отсутствие списков надуманное.
1
|
||
|
0 / 0 / 0
Регистрация: 03.07.2023
Сообщений: 4
|
|
| 03.07.2023, 14:57 [ТС] | |
|
- А куда вы будете складывать входящие данные, позвольте спросить?
Полагаю, что подразумевалось использование только числовых переменных. -Или тут максимально по упоротому добавлять результаты к одной и той же строке? Я думал насчёт строк, но тогда, если их можно использовать, то не вижу особого смысла в ограничении на списки. Сегодня ближе к 18:00 приложу ссылку на само видео с урока, на случай, если я не так понял.
0
|
|
|
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,759
|
|||||||||||
| 03.07.2023, 17:41 | |||||||||||
Добавлено через 1 час 18 минут Что-то подобное:
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 03.07.2023
Сообщений: 4
|
|
| 03.07.2023, 17:50 [ТС] | |
|
0
|
|
|
|
|
| 03.07.2023, 20:06 | |
|
Мне кажется, это невозможно. Вырисовывается примерно такой подход, в качестве наиболее экономного - мы храним сумму, с каждым новым числом его прибавляем к сумме и должны вычесть первое. Но эти первые надо хранить.
Поясню. Я думаю о сложном случае, когда числа подаются в виде последовательности (а не списка) и мы не можем помнить много "прошлых". Решение от u235 опирается на то, что сами числа нам поступили в виде списка (а не последовательности), и не заводим новый список.
0
|
|
|
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
|
|
| 03.07.2023, 20:28 | |
|
dondublon, Почему-то мне кажется, что когда ТС выложит решение (если выложит), то в нем все равно будет в той или иной форме присутствовать список.
Если бы К было задано фиксировано, то мы могли бы сделать (захардкодить) буфер в виде number_1, number_2 .... number_k, и дальше проводить какую-то ротацию, чтобы заменяя "ушедшие" значения новыми, но т.к. К неизвестно, то по любому понадобится какая-то структура размер которой можно задать динамически. Можно конечно реализовать свой "список", но это "такое".
0
|
|
|
14445 / 7486 / 1580
Регистрация: 06.09.2009
Сообщений: 27,129
|
|
| 03.07.2023, 20:36 | |
|
Видимо все же подразумевалось, что на входе числа не пишутся в список, а выходные данные как раз можно и в список оформить.
0
|
|
|
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
|
|
| 03.07.2023, 20:44 | |
|
Как ни крути, К чисел нужно запоминать.
1
|
|
|
32 / 24 / 11
Регистрация: 03.06.2023
Сообщений: 56
|
||||||
| 03.07.2023, 20:49 | ||||||
|
Хм, можно ли как-то создать второй генератор, не вводя данные повторно? (отметил комментарием нужное место)
0
|
||||||
|
14445 / 7486 / 1580
Регистрация: 06.09.2009
Сообщений: 27,129
|
||
| 03.07.2023, 21:18 | ||
|
1
|
||
|
0 / 0 / 0
Регистрация: 03.07.2023
Сообщений: 4
|
||||||
| 03.07.2023, 22:47 [ТС] | ||||||
|
UPD! Нашёл преподавателя в VK (Гуровиц Владимир Михайлович). Он подтвердил Ваши предположения:
"имелось в виду, что N большое, и N памяти у нас нет, а К - маленькое, и К памяти использовать можно" Добавлено через 42 минуты Получилось так:
0
|
||||||
|
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
|
|||||||
| 05.07.2023, 23:29 | |||||||
|
может так:
0
|
|||||||
|
14445 / 7486 / 1580
Регистрация: 06.09.2009
Сообщений: 27,129
|
|
| 05.07.2023, 23:34 | |
|
1
|
|
|
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,759
|
||||||
| 07.07.2023, 12:40 | ||||||
|
Если нужна скорость, то можно так:
0
|
||||||
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
|
|||||||
| 07.07.2023, 14:02 | |||||||
0
|
|||||||
|
|
||||||
| 09.07.2023, 15:49 | ||||||
|
Я имел в виду как-то так:
Для суммы норм, для максимума чисто не сделаешь, но можно сократить число проходов по очереди в k раз в среднем, оставить только для случая, когда попнутый элемент является максимальным.
1
|
||||||
| 09.07.2023, 15:49 | |
|
Помогаю со студенческими работами здесь
19
Поиск максимального потока методом проталкивания предпотока Поиск максимального потока методом Форда-Фалкерсона Задача на нахождение максимального потока и потока минимальной
Поиск максимального числа Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|