У цьому виклику ваше завдання - взяти аніон і катіон та вивести хімічну формулу сполуки. Вхід відповідає цим правилам:
- Візьміть в 2 -х рядках (в будь-якому порядку) , що представляють аніон і катіон, наприклад
F
,NH_4
, абоAl
. - Для того, щоб взяти на себе заряд кожного іона, ви можете мати його як частину рядка, розділену каретою (наприклад
F^-1
) або взяти додаткові числові аргументи.- Примітка. Поки ваш цифровий вхідний тип підписаний, заряд аніона передаватиметься як негативне число.
- Символи завжди будуть справжніми, а заряди точними.
Вихід повинен відповідати цим правилам:
- Використання
_
для підписки: Fe 2 O 3 було бFe_2O_3
. - Катіон спочатку: NaCl, а не ClNa.
- Нейтральна молекула: Li 2 O, не LiO або LiO - .
- Найнижчі можливі коефіцієнти: Fe 2 O 3 , а не Fe 4 O 6 .
- Немає підпису: NaCl, не Na 1 Cl 1 .
- Без зміщення: NH 4 OH, не NH 5 O.
- Умовні дужки:
- Не використовуйте дужки для одноатомного іона: MgCl 2 , а не Mg (Cl) 2 .
- Не використовуйте дужки, якщо на молекулу є лише один іон: KClO 3 , а не K (ClO 3 ).
- НЕ використовуйте дужки, якщо є два або більше багатоатомних іонів: Be 3 (PO 4 ) 2 , не Be 3 PO 4 2 або Be 3 P 2 O 8 .
Ось кілька додаткових зразків входів та виходів:
Input Output
Fe^+3, O^-2 Fe_2O_3
Fe^+2, O^-2 FeO
H^+1, SO_4^-2 H_2SO_4
Al^+3, SO_4^-2 Al_2(SO_4)_3
NH_4^+1, SO_4^-2 (NH_4)_2SO_4
Hg_2^+2, PO_4^-3 (Hg_2)_3(PO_4)_2
NH_4^+1, OH^-1 NH_4OH
Hg_2^+2, O_2^-2 Hg_2O_2
Оскільки це код-гольф , найкоротша відповідь у байтах виграє.
NO_3^-1
. Також інший тестовий випадок повинен бути першим у парі з a ^-2
, так що це зробить (C(NH_2)_3)_2...
. Або випадок, коли іон, який потрібен не один раз, починається з дужки.
Fe_4(Fe(CN)_6)_3
для прусського синього кольору.
Fe^+2, OH^-1: Fe(OH)_2
для багатоатомного іона з 1 кожним елементом (OH^-1
).