Ви натрапили на старий індійський рукопис, який описує кургани закопаного скарбу. Рукопис також говорить вам про розташування скарбу, за винятком того, що деякі ключові цифри були зафіксовані опосередковано в тексті. Ви розумієте, що в тексті використовується система "Kaadi", обмежена підмножина більш поширеної системи "Katapayadi".
(Система Катапаяді - давньоіндійська система для кодування цифр як букв, часто використовується як мнемоніка для запам'ятовування довгих чисел.)
Ваше завдання тут - розшифрувати текст, закодований в системі Kaadi, і роздрукувати числове значення.
Деталі
Введіть символи
Система Kaadi заснована на правилах системи Katapayadi , але використовує лише перший ряд приголосних. Ваш текст тут був транслітерований на латинський алфавіт, і він, як відомо, містить лише:
- голосні 'a', 'e', 'i', 'o', 'u'
- приголосні «G», «до», «з», «J», і їх форма (капіталу , щоб представити всмоктувану форму цих приголосних звуків), і «N» і «N».
(Ви можете вибрати, щоб отримувати та обробляти 'ṅ' як 'ng' та 'ñ' як 'ny', якщо це зручніше для вашої мови.)
Присвоєння вартості
У цій системі
кожен приголосний, коли супроводжується голосним, має цифру, пов'язану з ним. Це:
'k'=>1, 'K'=>2,
'g'=>3, 'G'=>4,
'ṅ'=>5,
'c'=>6, 'C'=>7,
'j'=>8, 'J'=>9,
'ñ'=>0
Зауважте, що ці значення застосовуються лише тоді, коли за цими приголосними йде голосна. kacCiмає те саме значення, що і kaCi( ka, Ci= (1,7)), оскільки середина c не супроводжується голосною.
Крім того, початковий голосний або послідовність з двох голосних є 0.
aikaCiбуде:ai,ka,Ci= (0,1,7)Зайві голосні в будь-якому іншому місці в середині тексту не мають значення:
kauCiaте самеkaCi, що додаткові голосні можна ігнорувати.
Кінцеве числове значення
Після того, як цифри цифр розібралися, підсумкове числове значення виходить у зворотному порядку цих цифр, тобто перша цифра з тексту є найменш значущою цифрою в кінцевому значенні.
Напр.
GucCiмає Guі Ci, так (4, 7), тому кінцеве значення дорівнює 74.
kakakaGo(1,1,1,4), тому відповідь 4111.
guṅKoє (3,2), тому кодує 23. ( gungKoякщо використовується ASCII -еквівалент.)
Вхідні дані
- Рядок, що містить текст, закодований Кааді
- міститиме лише голосні та вищезгадані приголосні
- голосні завжди знаходяться з малих літер і зустрічаються групами не більше 2-х
- ви можете прийняти літери для 5 і 0 або як символи Unicode 'ṅ' і 'ñ', або як їх еквіваленти ASCII 'ng' і 'ny' (вони знаходяться з малих літер у будь-якій формі)
- ви можете припустити, що немає пробілів чи розділових знаків
Вихідні дані
- Числове значення тексту, як задано вищезазначеними правилами
- для порожнього введення пустий вихід або будь-який помилковий вихід у вибраній вами мові є прийнятним, крім 0
- для недійсного введення (введення з чим-небудь, крім голосних та вищезгаданих приголосних), вихід не визначений - все буде
Тестові справи
"GucCi"
=> 74
"kakakaGo"
=> 4111
"aiKaCiigukoJe"
=> 913720
""
=> 0 //OR empty/falsey output
"a"
=> 0
"ukkiKagijeCaGaacoJiiKka"
=> 1964783210
"kegJugjugKeg"
=> 2891
"guṅKo"
=> 23
"Guñaaka"
=> 104
"juñiKoṅe"
=>5208
(останні можуть бути:
"gungKo"
=> 23
"Gunyaaka"
=> 104
"junyiKonge"
=>5208
якщо ви віддаєте перевагу.)
Застосовуються стандартні правила вводу / виводу та лазівки . Нехай переможе найкращий гольфіст!
ord(c)%47%10дає унікальний індекс [0..9]для кожного приголосного. (З ord("ṅ")=7749і ord("ñ")=241.)
aiaKaciввести? (3 провідні голосні)