В шахматах нотация Форсайта-Эдвардса , более часто называемая «FEN», является текстовым способом расшифровки досок. Он описывает каждый из восьми рядов доски (называемых «шахматами» в шахматном порядке) сверху вниз с точки зрения белых. Части написаны как K (король), Q (ферзь), R (ладья), B (слон), N (рыцарь) и P (пешка). Черные фигуры используют эти буквы в нижнем регистре, а белые фигуры используют эти буквы в верхнем регистре. Пустые пробелы обозначаются цифрами от 1 до 8, указывающими, сколько существует последовательных пустых пробелов. Было бы совершенно пустое звание, была бы 8
одна черная ладья в крайнем правом столбце (в шахматах называемая «файлами») 7r
и две белые пешки на каждом конце ряда PP4PP
. Ряды разделены/
, Обычно добавляется другая информация, указывающая, какая сторона должна двигаться, рокировка и права прохода , номер хода и часы полуоборота, но мы будем игнорировать их для целей этой задачи.
вход
Строка FEN, из командной строки или STDIN, как вам угодно. Вы можете предположить, что эта строка всегда действительна.
Вывод
Напишите в STDOUT простое ASCII-изображение доски, как оно выглядит на самом деле:
- Части представлены их персонажем в FEN
- Пустые квадраты представлены пробелами
- Куски и квадраты разделены трубкой,
|
и на каждой стороне доски есть трубы
Таким образом, пустая доска, написанная как 8/8/8/8/8/8/8/8
в FEN, будет выглядеть как
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
Начальная позиция шахматной игры записывается как rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR
и будет выглядеть как
|r|n|b|q|k|b|n|r|
|p|p|p|p|p|p|p|p|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
|P|P|P|P|P|P|P|P|
|R|N|B|Q|K|B|N|R|
Финальная позиция Андерсена-Кизерицкого в 1851 году , называемая «Бессмертная игра» в шахматном сообществе, записывается как r1bk3r/p2pBpNp/n4n2/1p1NP2P/6P1/3P4/P1P1K3/q5b1
, и ваша программа при подаче этого ввода выдаст:
|r| |b|k| | | |r|
|p| | |p|B|p|N|p|
|n| | | | |n| | |
| |p| |N|P| | |P|
| | | | | | |P| |
| | | |P| | | | |
|P| |P| |K| | | |
|q| | | | | |b| |