Футбол - это спорт, в котором игроки бьют по мячу, а не несут его. Некоторые смущенные люди могут назвать этот футбол.
У футбольной команды есть один вратарь и 10 игроков на поле. В футболе используется много формаций , которые определяют, где должен быть каждый игрок (игрок, конечно, перемещается, но это базовая позиция).
Наиболее распространенная формация 4-4-2, что означает, что есть 4 защитника, 4 полузащитника и два нападающих. Другие формирования («защитники, полузащитники, нападающие» или «защитники, полузащитники, полузащитники, нападающие»):
- 4-4-2
- 4-3-3
- 5-3-2
- 3-4-3
- 3-5-2
- 4-5-1
- 5-4-1
- 4-4-1-1
- 4-3-1-2
- 4-1-2-3
- 4-1-3-2
- 4-3-2-1
- 3-4-1-2
- 3-3-3-1
Задача состоит в том, чтобы взять два входа, по одному для каждой из двух команд, и вывести обзор игроков на поле.
В целом: Большая часть информации о компоновке ASCII-арта приведена на рисунках (на картинке написано более 1000 слов). Подробно объясняется только способ размещения 10 игроков на поле:
- Вратарь и штрафная зона занимают 3 ряда ASCII-символов
- Расположение и количество пробелов можно найти на рисунке ниже
- Между штрафной и защитниками нет пустых строк
- Если в пласте 3 числа (например, 4-4-2, 4-3-3 и т. Д. Не 4-3-2-1):
- Между защитниками и полузащитниками нет пустых строк
- Между полузащитниками и нападающими один пустой ряд
- Если в пласте 4 числа (например, 4-3-2-1, 3-3-3-1 и т. Д. Не 4-4-2):
- Пустого ряда между защитником и первым рядом полузащитников нет
- Между первым рядом полузащитников и вторым нет пустого ряда
- Между вторым рядом полузащитников и нападающими нет пустого ряда
- Между нападающими и центральной линией нет пустых строк
- Команда в верхней половине помечены как
x
, а команда во второй половине помечены какo
. - Каждый ряд игроков должен быть распределен на поле, как показано на рисунках ниже. Количество пробелов можно увидеть на рисунке.
На следующем рисунке не представлена действительная формация, но она используется для иллюстрации макета и количества необходимых мест между каждым игроком. Вход для этого будет 2 3 4 5
и 5 4 2
:
+-----------------+
| | x | |
| +-----+ |
| x x |
| x x x |
| x x x x |
| x x x x x |
+-----------------+
| o o |
| |
| o o o o |
| o o o o o |
| +-----+ |
| | o | |
+-----------------+
Допустимые примеры:
Input:
4 4 2, 5 3 1 1
+-----------------+
| | x | |
| +-----+ |
| x x x x |
| x x x x |
| |
| x x |
+-----------------+
| o |
| o |
| o o o |
| o o o o o |
| +-----+ |
| | o | |
+-----------------+
Input:
3 5 2, 4 4 1 1
+-----------------+
| | x | |
| +-----+ |
| x x x |
| x x x x x |
| |
| x x |
+-----------------+
| o |
| o |
| o o o o |
| o o o o |
| +-----+ |
| | o | |
+-----------------+
Правила:
- Ввод может быть в любом удобном формате, разделенным, как вы хотите. Формат может быть одной строкой (
5311
), цифрами, разделенными запятыми (5,3,1,1
) и т. Д.- Вход не должен содержать никакой другой информации, кроме двух образований
- Вывод должен выглядеть точно так же, как примерные цифры, но завершающие пробелы и переводы строк в порядке.
- Вы можете предположить, что дан только верный ввод (будут использоваться только формирования в списке).
- Полная программа или функция
Это код гольф, поэтому выигрывает самый короткий код в байтах.