0 / 0 / 0
Регистрация: 13.01.2020
Сообщений: 15

Найдите наибольший возможный объем прямоугольный коробки

22.01.2020, 08:34. Показов 8862. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Количество одинаковых квадратов со стороной 1- не больше заданного числа. Найдите наибольший возможный объем прямоугольный коробки (без крышки), которую можно сделать из этих квадратов.

Ввод: Натуральное число от 5 до 2019.
Вывод: натуральное число.

Пример: Ввод: 9 Вывод: 2

Пояснение: такую коробку можно сделать из восьми или девяти квадратов

помогите пожалуйста буду благодарен
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2020, 08:34
Ответы с готовыми решениями:

Найти максимальный объём коробки
Помогите, пожалуйста, сделать так, чтобы проверка стороны квадрата(высоты коробки) начиналась с числа на разряд меньшего стороны листа,...

ТЕОРИЯ: оценить возможный объём исходных данных
Здравствуйте! По заданию курсовой работы я проверяю ориентированный граф на ацикличность. И в самом отчете по работе уже следует...

Какой максимально возможный объем оперативной памяти sodimm
Какой максимально возможный объем оперативной памяти sodimm ( ноутбучный ) существует при условии 2r* 8 ( по 8 чипов памяти на каждой...

22
5525 / 2878 / 572
Регистрация: 07.11.2019
Сообщений: 4,773
25.01.2020, 11:39
Студворк — интернет-сервис помощи студентам
eaa, мне не совсем понятно, откуда взялся квадратный корень из N.. Поясните?
Если говорить чисто про перебор, то у меня получается два цикла что-то типа https://www.cyberforum.ru/cgi-bin/latex.cgi?O(n).

Добавлено через 10 минут
Matrix3007, даже если рассматримать коробки с непрямоугольным основанием, то при одном и том же N коробки с прямоугольным основанием будут иметь больший или равный объем.

Добавлено через 23 минуты
Python
1
2
3
4
5
6
7
8
9
10
import math
n=int(input('n='))
V=0
for h in range(1, int(((n-1)/4))+1):
    for l in range(1, int(math.sqrt(4*h*h+n)-2*h)+1):
        w=int((n-2*h*l)/(l+2*h));
        t=h*l*w
        if t>V:
            V=t
print('max volume=',V)
0
Status 418
Эксперт Python
4584 / 2350 / 601
Регистрация: 26.11.2017
Сообщений: 5,262
Записей в блоге: 3
25.01.2020, 15:11
Лучший ответ Сообщение было отмечено ARSENJ как решение

Решение

Действительно с корнем не правильно. Нужно брать sqrt(n) + 1. И высоту не перебирать, а вычислить.
Python
1
2
3
4
5
6
7
n = int(input())
n2 = round(n**.5) + 1
V = 0
for L in range(1, n2):
    for W in range(L, n2):
        V = max(V, (n - L * W) // (2 * (L + W)) * L * W)
print(V)
Вот тут https://www.cyberforum.ru/cgi-bin/latex.cgi?O(n)

u235, у Вас не https://www.cyberforum.ru/cgi-bin/latex.cgi?O(n), a https://www.cyberforum.ru/cgi-bin/latex.cgi?O(n\sqrt{n})

Добавлено через 3 минуты
забыл что range в python отнимает от правой границы 1
2
5525 / 2878 / 572
Регистрация: 07.11.2019
Сообщений: 4,773
26.01.2020, 09:22
eaa, хорошее решение!
Но все же непонятно, почему у Вас W итерируется именно до n2, а не далее, до N/L или чего-то подобного?
C L и H - все понятно.
Например, для N=26 возможна коробка (1,8,1), в вашем коде максимально длинная коробка - (1,5,1).
Т.е. у Вас из перебора исключаются все длинные(широкие), но низкие и широкие(длинные) коробки.
Еще, не критично, но у вас в переборе иногда получаются коробки нулевой высоты.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.01.2020, 09:22
Помогаю со студенческими работами здесь

Найти наибольший возможный НОД трех чисел, если их произведение равно 56824590636
Произведение трех чисел равно 56824590636. Найдите наибольший возможный НОД этих чисел.

Как расчитать максимально возможный объем информации посланной/принятой web-сервером за сутки?
Как расчитать максимально возможный объем информации посланной/принятой web-сервером за сутки? На основании каких исходных данных? ...

Найдите наименьший возможный периметр 12-угольника с вершинами в получившихся точках
Дан правильный 12-угольник со стороной 1. Внутри выбрана точка K. Точку K отразили относительно всех прямых, содержащих стороны данного...

Создайте функцию, которая принимает два числа и возвращает наибольший возможный результат вычислений.
Создайте функцию getLargestExpressionResult, которая принимает два числа a и b и возвращает наибольший возможный результат среди выражений:...

Две коробки можно поставить на полку если у них одинаковый объём и разный цвет
Не могу доделать лабораторку. Убрать дублирующие и пустые кортежи: Наверно нужны функции для L. А может быть можно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru