Вопрос задан 23.06.2023 в 19:53. Предмет Информатика. Спрашивает Кагаров Егор.

СРОЧНО НА С++ На завод! У Пети есть X граммов краски, а у Васи — Y граммов краски. Одного грамма

краски хватает, чтобы покрасить плитку 1×1. На заводе есть неограниченное количество квадратных плиток любых размеров. Петя выберет максимальную плитку, на которую у него хватит краски. Вася поступит аналогично. Таня работает в плановом отделе, и в её интересах сделать так, чтобы суммарно было потрачено как можно больше краски. Поэтому Таня интересуется: а что если Петя отдаст всю свою краску Васе? Получится ли тогда потратить больше краски или нет? В данной задаче запрещено использовать функцию sqrt, а также операцию возведения в степень. Примеры Ввод 10 10 Вывод Petya leaves paint to himself
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Белоусов Дима.

Ответ:

#include <iostream>

unsigned perfectSquareLessOrEqual(unsigned n) {

unsigned sum = 0;

for (unsigned i = 1; (sum + i) <= n; i += 2)

sum += i;

return sum;

}

int main() {

unsigned x, y;

std::cin >> x >> y;

const unsigned a = perfectSquareLessOrEqual(x) + perfectSquareLessOrEqual(y);

const unsigned b = perfectSquareLessOrEqual(x + y);

if (a < b)

std::cout << "Petya gives paint to Vasya";

else if (a > b)

std::cout << "Petya leaves paint to himself";

else

std::cout << "Equal";

return 0;

}

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

Ваша цель - найти такой максимальный размер квадрата, который Петя и Вася могут покрасить. Для этого вы можете просто находить минимум из X и Y, так как каждому из них нужно хотя бы по одному грамму краски.

Затем вы определяете, сколько краски останется у Пети, если он отдаст ее Васе. Это можно сделать, вычтя количество краски, необходимое для покраски максимального квадрата из его исходного запаса X:

cpp
#include <iostream> using namespace std; int main() { int X, Y; cin >> X >> Y; // Находим минимум из X и Y, это максимальный квадрат, который они могут покрасить int maxSquare = min(X, Y); // Остаток краски у Пети после покраски максимального квадрата int remainingPaint = X - maxSquare; if (remainingPaint > 0) { cout << "Petya leaves paint to himself"; } else { cout << "Vasya leaves paint to himself"; } return 0; }

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

0 0

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

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос