Давай сравним все 4 числа между собой, найдём максимальное и вычтем из него N.
#include <bits/stdc++.h>
using namespace std;
int main() {
int a, b, c, d, n;
cin >> a >> b >> c >> d >> n;
if (a > b && a > c && a > d)
a -= n;
else if (b > a && b > c && b > d)
b -= n;
else if (c > a && c > b && c > d)
c -= n;
else d -= n;
cout << a << " " << b << " " << c << " " << d << endl;
return 0;
}
Тернарная операция в C++ - это выражение вида (b ? x : y) (где b - логическое выражение, а x и y - одного типа). Она вернёт x, если выражение b истинно, и y, если b ложно.
В приложении расписаны координаты некоторых клеток, а также помечены точками те, которые по цвету отличаются от не помеченных. Если поискать, что у них общего, можно обнаружить, что у "невыколотых" клеток сумма координат по горизонтали и вертикали - чётная. Это "свойство" и используем для определения цвета клетки.
#include <bits/stdc++.h>
using namespace std;
int main() {
int x1, y1, x2, y2;
cin >> x1 >> y1 >> x2 >> y2;
cout << ((x1 + y1) % 2 == (x2 + y2) % 2 ? "YES" : "NO") << endl;
return 0;
}
Т.к. первый слева байт твой IP-адреса узла = первому слева байту адрес сети, то первый байт Маски = 11111111. Аналогично второй байт Маски = 11111111.
Переведем число 161, которому равен третий байт IP-адреса, в двоичный код. Получаем: 161 = 10100001. Т.к. при поразрядной конъюнкции IP-адреса узла и Маски получилось 160 (10100000), то третий байт Маски может принимать минимальное значение 11100000. Т.е. это дает нам пять нулей.
Четвертый байт адреса сети равен 0. Следовательно, наименьшее значение четвертого байта Маски может быть 00000000. Это дает восемь нулей.
Суммируем получившиеся нули. 5 + 8 = 13.
вот и всё)
ответ: 13