Фермер Джон получил в наследство поле, на котором с незапамятных времен находится один большой и древний камень. По непонятной для самого себя причине Джон боится приближаться к камню, не говоря уже о том, чтобы сдвинуть или избавиться от него. Фермер разбил всё свое поле, которое представляет собой прямоугольник n х m метров, сеткой на квадраты со стороной один метр. Камень занимает ровно один такой единичный квадрат. Камень находится в строке номер х и столбце номер у.
Техника Джона может обработать только прямоугольный участок земли, стороны которого имеют целочисленные значения в метрах и на котором не располагается этот камень.
Теперь Джон хочет узнать, сколькими способами он может засеять прямоугольник с расположенными на сетке сторонами, такой, что внутри этого прямоугольника не содержится древний камень.
1 Ответ
Чтобы узнать сколькими способами можно засеять прямоугольник, делам решения:
C++:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
long long n, m, x, y;
cin >> n >> m >> x >> y;
cout << n * (n + 1) * m * (m + 1) / 4 — x * y * (n — x + 1) * (m — y + 1);
}
Python:
n = int(input())
m = int(input())
x = int(input())
y = int(input())
print(n * (n + 1) * m * (m + 1) / 4 — x * y * (n — x + 1) * (m — y + 1))