- 23, Oct 2024
- #1
В шахматах нотация Форсайта-Эдвардса, чаще называемая «FEN», представляет собой текстовый способ расшифровки доски. Он описывает каждый из восьми рядов доски (в шахматах называемых «рангами») сверху вниз с точки зрения белых. Фигуры записываются как K (король), Q (ферзь), R (ладья), B (слон), N (конь) и P (пешка). Черные фигуры используют эти буквы в нижнем регистре, а белые фигуры используют эти буквы в верхнем регистре. Пустые места обозначаются цифрами от 1 до 8, указывающими количество последовательных пустых мест. Совершенно пустой ранг был бы
, a single black rook in the rightmost column (called "files" in chess) would be|r| |b|k| | | |r| |p| | |p|B|p|N|p| |n| | | | |n| | | | |p| |N|P| | |P| | | | | | | |P| | | | | |P| | | | | |P| |P| |K| | | | |q| | | | | |b| |
r1bk3r/p2pBpNp/n4n2/1p1NP2P/6P1/3P4/P1P1K3/q5b1
, и две белые пешки на каждом конце ряда будут |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|
. Ranks are separated by a rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR
. Обычно добавляется другая информация, указывающая, на какую сторону следует двигаться, рокировку и на проходе права, номер хода и часы полухода, но мы проигнорируем их для целей этой задачи.
Вход
Строка FEN из командной строки или STDIN, как вам будет угодно. Вы можете предположить, что эта строка всегда действительна.
Выход
Напишите в STDOUT простое ASCII-изображение платы, как она выглядит на самом деле:
- Фигуры представлены в FEN своим характером.
- Пустые квадраты представлены пробелами
- Фигуры и квадраты разделены трубой.
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
and there are pipes on each side of the board
Итак, пустая доска, написанная как 8/8/8/8/8/8/8/8
in FEN, would appear as
|
Начальная позиция шахматной партии записывается как /
, and would appear as
PP4PP
Окончательное положение Андерсен-Кизерицкий 1851 г., называемая в шахматном сообществе «Бессмертной игрой», записывается как 7r
, and your program when fed that input would output:
8
#код-гольф #строка #ascii-art #chess