До виявлення відбитків пальців та ДНК-тестування британська поліція використовувала антропометричну систему для виявлення правопорушників. Окремі частини тіл злочинців вимірювались і зберігалися в записах - ці частини тіла передбачалося, що вони не змінюються розмірами після повноліття. Ця система була відома як bertillonnage .
На діаграмі нижче представлена система подачі документів, яка використовується поліцією для швидкого доступу до цих записів.
Діаграма 1: Система подачі з пронумерованими ящиками.
Примітка. Якщо ви не бачите зображення, спробуйте дзеркало імгур або скомпілюйте його самостійно .
Шафа для подачі складається з 81 пронумерованого ящика. У кожному ящику містяться картки, а на кожній картці є вимірювання окремих частин тіла злочинця:
- Довжина їх голови (
H
) - Ширина їх голови (
B
) - Ширина їхнього правого вуха (
E
) - Довжина їх вказівного пальця (
F
)
Кожне вимірювання класифікується як мале, середнє або велике.
Наприклад, ящик 56 містить карти з наступними характеристиками: мала H, B великий, середні Е, і малі F. Це може бути нотірованних з допомогою букв S
, M
і L
в місці малих, середнього і велика:
SH,LB,ME,SF
Зауважте, що буква розміру йде спочатку, а потім, що таке вимірювання. Крім того, знак оклику !
може бути поставлений спереду, щоб викликати негатив:
!SH,LB,!ME,SF
Це вказує на картки, які мають такі характеристики: не мала H, велика B, не середня E, і мала F. Існує чотири ящики, які містять картки з такими характеристиками - 58, 60, 61 та 63.
Ваше завдання - написати програму, яка, коли дається рядок із зазначенням деяких характеристик, видає всі ящики, які містять картки з цими характеристиками. Якщо немає ящиків, які містять картки із заданими характеристиками, виведіть 0
.
Ось декілька зразків входів та виходів.
- Вхід:
SH,LB,ME,SF
Вихід:56
- Вхід:
!SH,LB,!ME,SF
Вихід:58,60,61,63
- Вхід:
SB,!MF,!LF
Вихід:1,2,3,4,5,6,7,8,9
- Вхід:
MH,!MH
Вихід:0
Це кодовий гольф, тому виграє найкоротший запис. Задавайте питання в коментарях, якщо специфікація не є чіткою.