Строишь по таблице граф и перебираешь все пути.
Чтобы не потеряться, можно делать по алфавиту.
A→B→C→E = 2 + 1 + 2 = 5 ← кратчайший
A→C→E = 5 + 2 = 7
A→D→C→E = 1 + 3 + 2 = 6
<span>(A\/B)/\(¬A\/B)=
=(А+B)*(</span>¬A+B)=
=A*¬A+A*B+¬A*B+B*B=
=A*B+¬A*B+B=
=B
854 секунд
здесь ограничение на мин ввод 20 сим
Изначально у нас есть четыре ёмкости из них :
одна 12/12 (полная) и три 0/5 ; 0/5 ; 0/3 (пустых).
Наглядно это весь процес выглядит следующим образом.
1) 12/12 ; 0/5 ; 0/5 ; 0/3 (это то что дано)
2) 7/12 ; 5/5 ; 0/5 ; 0/3
3) 2/12 ; 5/5 ; 5/5 ; 0/3
4) 2/12 ; 2/5 ; 5/5 ; 3/3
5) 0/12 ; 4/5 ; 5/5 ; 3/3
6) 3/12 ; 4/5 ; 5/5 ; 0/3
7) 3/12 ; 4/5 ; 2/5 ; 3/3
8) 6/12 ; 4/5 ; 2/5 ; 0/3
9) 6/12 ; 4/5 ; 0/5 ; 2/3
10) 1/12 ; 4/5 ; 5/5 ; 2/3
11) 1/12 ; 4/5 ; 4/5 ; 3/3
12) 4/12 ; 4/5 ; 4/5 ; 0/3