Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/89: Рейтинг темы: голосов - 89, средняя оценка - 4.92
9 / 7 / 2
Регистрация: 22.03.2016
Сообщений: 112

Для освоения Марса требуется построить исследовательскую базу

22.03.2016, 22:10. Показов 17964. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, нужна помощь для решения двух олимпиадных задач по информатике, условия задач описаны ниже. Если кто-то сможет написать код, то, пожалуйста, в разделе описания переменных прокомментируйте назначение этих переменных... Буду очень признателен, если кто-от откликнется... Очень срочно надо..
Задача 1.
Космическое поселение

Для освоения Марса требуется построить исследовательскую базу. База должна состоять из n одинаковых модулей. Каждый модуль представляет собой жилой отсек, который в основании имеет форму прямоугольника размером a × b метров.
Для повышения надежности модулей инженеры могут добавить вокруг каждого модуля дополнительный защитный слой. Толщина этого слоя должна составлять целое число метров, и все модули должны иметь одинаковую толщину защитного слоя. Модуль с защитным слоем, толщина которой равна d метрам, будет иметь в основании форму прямоугольника размером (a + 2d) × (b + 2d) метров.
Все модули должны быть расположены на заранее подготовленном прямоугольном поле размером w × h метров. При этом они должны быть организованы в виде регулярной сетки: их стороны должны быть параллельны сторонам поля, и модули должны быть ориентированы одинаково.
Требуется написать программу, которая по заданным количеству и размеру модулей, а также размеру поля для их размещения, определяет максимальную толщину дополнительного защитного слоя, который можно добавить к каждому модулю.
Формат входного файла
Входной файл содержит пять разделенных пробелами целых чисел: n, a, b, w и h (1 ≤ n, a, b, w, h ≤ 1018). Гарантируется, что без дополнительного защитного слоя все модули можно разместить в поселении описанным образом.
Формат выходного файла
Выходной файл должен содержать одно целое число: максимальную возможную толщину дополнительного защитного слоя. Если дополнительный защитный слой установить не удастся, требуется вывести число 0.

Примеры тестов:
1 тест. входные данные: 11 2 3 21 25
выходные данные: 2

2 тест. входные данные: 1 5 5 6 6
выходные данные: 0
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.03.2016, 22:10
Ответы с готовыми решениями:

Нельзя открыть базу данных, так как для нее требуется выполнить провер
Peales, help. Подскажите, как сделать проверку целостности?!? Вопрос снимается, нашел

Для заданной схемы балки требуется написать выражения F и M для каждого участка в общем виде, построить эпюры F и M...
для заданной схемы балки требуется написать выражения F и M для каждого участка в общем виде, построить эпюры F и M, найти Ммакс и...

Упражнения для освоения С++
Привет, я хочу освоить программирование на более серозном уровне и мне интересно чему следует уделить усилия что б в будущем можно било...

5
3 / 3 / 0
Регистрация: 26.11.2017
Сообщений: 30
30.12.2018, 13:17
Задача на бинпоиск по ответу,вот мой код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
n, a, b, w, h = map(int, input().split())
 
left = 0
 
right = min(w, h)
 
while left + 1 < right:
 
    d = (left + right) // 2
 
    x = max((w // (a + 2 * d)) * (h // (b + 2 * d)), (h // (a + 2 * d)) * (w // (b + 2 * d)))
 
    if x >= n:
 
        left = d
 
    else:
 
        right = d
 
print(left)
1
0 / 0 / 0
Регистрация: 03.11.2022
Сообщений: 1
03.11.2022, 16:39
говнокод, крашится на 7 тесте, переписывай
0
Модератор
10404 / 5691 / 3400
Регистрация: 17.08.2012
Сообщений: 17,339
05.11.2022, 22:05
Да... Некрофилия и извращение в одном флаконе...

glebik2015, и кому это Вы скомандовали переписывать код? Тема четырёхлетней давности, вряд ли Exiti услышит Ваш приказ: его уже три года как нет на форуме. Никудышный Вы командир.

Ответ на питоне в паскалевской ветке. Мило, не правда ли? Как Вас вообще угораздило за питоном на паскалевскую ветку залезть, не постигаю.

И совершенно очевидно, почему не все тесты проходятся: в питоновский int число 1018 не помещается.
1
0 / 0 / 0
Регистрация: 25.11.2022
Сообщений: 19
25.11.2022, 18:01
Кому надо на c++ тоже самое (скопировано) на acmp прошло
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
int main() {
    long long n, a, b, w, h,left = 0,right,d,x;
    cin>>n>>a>>b>>w>>h;
    right = min(w, h);
    while(left + 1 < right)
    {
        d = (left + right) / 2;
        x = max((w / (a + 2 * d)) * (h / (b + 2 * d)), (h / (a + 2 * d)) * (w / (b + 2 * d)));
        if (x >= n)
            left = d;
        else
            right = d;
    }
    cout<<left;
    return 0;
}
0
Модератор
10404 / 5691 / 3400
Регистрация: 17.08.2012
Сообщений: 17,339
25.11.2022, 19:22
Artem Ka, здесь не принято публиковать ответы на языке, не соответствующем языку, для которого предназначен раздел.

Да и копию программы ни к чему было публиковать, и так всё ясно.

Чтобы программа на питоне проходила все тесты, достаточно в ней поменять int на int64.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.11.2022, 19:22
Помогаю со студенческими работами здесь

Построить нечеткую базу знаний для задачи управления транспортным средством
Построить нечеткую базу знаний (использовать не менее 3 лингвистических переменных) для задачи управления транспортным средством...

Выбор книги по для освоения C++
В сях опыта мало, но опыт программирования есть. Неплохо освоил Паскаль. Сейчас ставлю задачу осваивать С++. Вопрос в литературе. Для...

Задание для освоения MatLab
Помоги пожалуйста выполнить задания. Я не понимаю как работать в MatLab.у меня ничего не получается . Постоянно выдает ошибками. ...

Литература для освоения ООП в C#
Добрый день. Прошу помочь выбрать литературу, а именно для того, что бы разобраться с классами, обьектами, методами и свойствами, что...

Учебники для освоения Fedora Linux
Посоветуйте пожалуйста учебники для освоения Федоры в инете не могу ничего найти . По душе мне этот дистрибутив запустил с лайф сиди теперь...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru