Судоку
Сітка Судоку являє собою 16×16 клітинок сітки або згруповані у 4×4 шістнадцять квадратов, де деякі клітинки заповнюються літерами від A до P (перші 16 великих літер англійського алфавіту), як показано на рисунку 1а. Суть гри полягає у тому, щоб заповнити усі порожні комірки сітки літерами від A до P так, що кожна літера у сітці зустрічається лише один раз у кожному рядку, кожному стовбці і кожному з квадратів 4×4. Почтковий вміст сітки задовольняє обмеженням вище і гарантує унікальність розв'язку.
Вхідні дані
Кожен набір вхідних дани кодує сітку і містить 16 рядків по 16 символів підряд, як показано у прикладі вхідних даних. i–й рядок чергового набору позначає i-й рядок сітки, містить 16 символів і починається з першої позиції рядка. Рядок складається із символів множини {A, B, …, P, -}, де "–" (мінус) позначає порожню комірку сітки. Різні набори даних відокремлені одним порожнім рядком і завершуються з кінцем файлу.
Вихідні дані
Програма виводить розв'язок для отриманих на вході сіток у тому ж форматі і порядку, що і для вхідних даних.