Мої двоє дітей люблять грати з такою іграшкою:
Кольорові ділянки з фігурами всередині можна торкатися, а черепаха тоді освітлює область і відтворює звук або вимовляє назву кольору чи форми всередині. Середня кнопка змінює режим. Існує один режим, коли ділянки відтворюють різні музичні ноти при дотику, з поворотом: якщо дитина торкається трьох послідовних областей за годинниковою стрілкою, відтворюється спеціальна мелодія 1. Якщо три області поспіль, що торкаються, розміщені проти годинникової стрілки, відтворюється спеціальна мелодія 2.
Змагання
Давайте змоделюємо внутрішню логіку іграшки. Давши рядок з 3 натисканнями малюка, поверніть два чіткі цілісні значення, якщо три натискання є для послідовних областей (за годинниковою або проти годинникової стрілки) і третього різного значення, якщо їх немає.
Деталі
- Області введення будуть названі символом кожного, який може бути їх кольором:
ROYGB
для червоного, оранжевого, жовтого, зеленого та синього; або їх форма:HSRTC
для серця, квадрата, зірки (R
), трикутника та кола. Корпус не має значення, ви можете вибрати роботу з введенням і виведенням лише великими або малими літерами. - Програма отримає рядок (або масив char або щось еквівалентне) з трьома натисканнями. Приклади ( з використанням кольору):
RBO
,GYO
,BBR
,YRG
,YGB
,ORB
... - Програма виведе три чіткі, когерентні значення для відображення трьох можливих результатів: перше значення, якщо комбінація не викликає особливу мелодію, друге значення, якщо комбінація викликає спеціальну мелодію за годинниковою стрілкою, і третє значення, якщо комбінація запускає проти годинникової стрілки спеціальна мелодія. Приклад:
0
для відсутності спеціальної комбінації,1
для мелодії, викликаної комбінацією за годинниковою стрілкою, і-1
для мелодії, викликаної комбінацією проти годинникової стрілки. - Не потрібно турбуватися про неправильне введення даних.
Тестові кейси
Input Output // Input based on colors
--------------
RBO 0 // No special combination
GYO -1 // Counterclockwise melody triggered
BBR 0 // No special combination
YRG 0 // No special combination
YGB 1 // Clockwise melody triggered
ORB -1 // Counterclockwise melody triggered
OOO 0 // No special combination
BRO 1 // Clockwise melody triggered
Це код-гольф , тому може виграти найкоротший код для кожної мови!
[0,0]
,[1,0]
,[0,1]
допускаються в якості продукції? Я бачу, що це робить відповідь Mathematica, і це дозволить зберегти 3 байти у відповіді 05AB1E.