Задача №1864. Изабелла
Правила пасьянса Изабелла таковы: в колоде 52 карты, каждая из которых характеризуется мастью и значением. Мастей всего четыре: трефы, бубны, червы и пики. Они обозначаются буквами C, T, H и S, соответственно. Значений карт всего 13: 2, 3, 4, 5, 6, 7, 8, 9, 10 (T), валет (J), дама (Q), король (K) и туз (A). На игровом столе расположено тринадцать стопок карт. В начале игры в каждой стопке лежат три карты лицом вниз и одна карта лицом вверх. Разрешается убирать пары карт одинакового значения, лежащие лицом вверх. Каждый раз, когда убирается карта, лежащая под ней карта (если такая существует) переворачивается и становится доступной для игры.
Напишите программу, которая уберёт как можно больше карт.
Входной файл содержит не более 5 тестов. Каждый тест состоит из 13 строк, каждая из которых описывает одну стопку карт, начиная с нижней.
Для каждого теста выведите как можно больше ходов. Если существует несколько решений с максимальным числом ходов, выведите любое из них.
Следуйте формату вывода, приведённому в примере, как можно точнее.
AC AH 6S AT 2C 2H 2S KT TC 3C 3H 3S 4C 4H 4S 4T 5C 5H 5S 5T 6C 7C 6T 7S 6H 8H QS 7T 8C AS 8S 8T 9C 9H 9S 9T TH TS QT TT JC JH JS JT QC QH 7H 3T KC KH KS 2T
Case #1: Vasya could remove 8 card(s). At step 1, Vasya should remove 3S and 3T. At step 2, Vasya should remove 7T and 7H. At step 3, Vasya should remove QS and QH. At step 4, Vasya should remove 8H and 8T.