Задача
В наличии есть такие системные блоки: $a_1$ поддерживают только VGA интерфейс, $a_2$ поддерживают только DVI и $a_3$ поддерживают оба интерфейса VGA и DVI. Аналогично по мониторам: $b_1$ поддерживают только VGA, $b_2$ — только DVI, $b_3$ — оба интерфейса.
Какое наибольшее количество компьютерных комплектов возможно собрать, если в каждом комплекте у системного блока с монитором должен быть совместимый графический интерфейс?
Входные данные
В первой строке три числа $a_1, a_2$ и $a_3$ и во второй строке три числа $b_1,b_2$ и $b_3$ — целые неотрицательные.
Причем $ 0 \leqslant a_1, a_2, a_3, b_1, b_2, b_3 \leqslant 100$ и $a_1+a_2+a_3$ $=$ $b_1+b_2+b_3$.
Выходные данные
Ответ к задаче.
Тесты
№ | Входные данные | Выходные данные | |
1 |
5 1 6 4 8 0 | 11 | |
2 |
0 0 3 1 3 6 |
3 | |
3 |
4 2 0 1 3 6 |
6 |
Код
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include <iostream> using namespace std; int complect(int & b, int & a) { int com = min(a, b); a -= com; b -= com; return com; } int main() { int a1, a2, a3, b1, b2, b3, c;//c-все возможные комплекты cin >> a1 >> a2 >> a3 >> b1 >> b2 >> b3; c = 0; c += complect(a1, b1); c += complect(a2, b2); c += complect(a1, b3); c += complect(a2, b3); c += complect(a3, b3); c += complect(b1, a3); c += complect(b2, a3); cout << c; return 0; } |
Решение
Составим все комбинации системных блоков с мониторами, у которых есть совместимый графический интерфейс. Порядок составления комплектов важен. Сначала посчитаем сколько можно составить комплектов $а_1$ с $b_1$ и $a_2$ с $b_2$, так как они поддерживают только один тип интерфейса. Далее посчитаем возможные комплекты $а_1$ с $b_3$, $a_2$ с $b_3$ и $a_3$ с $b_3$ $a_3$ с $b_1$ и $a_3$ с $b_2$ из оставшегося оборудования. Выведем общее количество компьютерных комплектов.
Ссылки
Код в ideone
Засчитанное решение на e-olymp
Задача на e-olymp