Паскале делатьЗадача 3. Не про спиннеры Саша совершенно не любит спиннеры,

Паскале делать
Задачка 3. Не про спиннеры Саша совершенно не любит спиннеры, потому он живописует в тетрадке . Он брал тетрадный лист из N x M клеток и пронумеровал все клеточки различными числами. Теперь ему стало интересно, сколько различных прямоугольников он может вырезать из жтого листа бумаги по границам клеток.
Программка получает на вход два числа N и M размеры начального листа. Все числа - целые положительные,не превосходящие 75000.
Программка обязана вывести одно число- количество прямоугольников, которые можно вырезать из данного листа бумаги(весь лист полностью также считается одним из вероятных прямоугольников)

Задать свой вопрос
1 ответ
Посчитаем сколько всего узлов на этом листке:
у нас он N клеток в вышину, значит всего в каждом столбике N+1 узел;
у нас он М клеток в ширину, значит всего в каждой строке М+1 узел.
Значит всего узлов (
N+1)*(М+1).
Чтоб определьть прямоугольник, надобно найти два узла в которых будут обратные углы:
1-ый узел мы можем избрать (
N+1)*(М+1) методами;
второй узел мы можем избрать 
N*М методами (мы не можем избрать тот столбик и тот ряд, в котором у нас стоит 1-ый узел).
Тоэсть всего методов избрать (
N+1)*(М+1)*N*М, но это не так.
Осмотрим весь лист как выбраный прямоугольник.
Пусть мы его избрали так:
(0; 0),  (
N+1; М+1).
Этот же прямоугольник мы считали, когда плучали с такими координатами:
1) (
N+1; М+1),  (0; 0).
2) (
N+1; 0),  (0; М+1).
3) (0; М+1),  (
N+1; 0).
И так с каждым прямоугольником, тоэсть каждый прямоугольник мы считаем 4 раза, тоэсть окончательная формула такая:
(N+1)*(М+1)*N*М / 4.
Осталось составить прогрмму, которая будет это вичислять.
С++:
include lt;iostreamgt;using namespace std;int main()

int N, M, k;
cin gt;gt; N gt;gt; M;
k = (N+1)*(M+1)*N*M / 4;
cout lt;lt; k lt;lt; endl;
return 0;


Pascal:
program Znanija;
var N, M, k:integer;
begin

read(N);
read(M);

k:=((N+1)*(M+1)*N*M) div 4;

writeln();
writeln(k);

end.
Геннадий Примушев
брат, спасибо, от души, ты лучший.....
Вадим
что такое узел ?
Ксения Емц
Пересечение линий сетки
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт