Гра китайських шашок проводиться на дошці з пробілами у формі шестикутної зірки:
Ми можемо створити ASCII-художнє зображення цієї дошки, використовуючи .
порожні плями та букви GYORPB
для шести кольорових початкових місць:
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
Щоб зробити це цікавіше, ми можемо також змінити розмір. Ми виміряємо розмір дошки за стороною довжини її трикутних початкових місць: дошка вище розміром 4.
Оскільки насправді болісно набрати все це вручну, давайте напишемо програму (або функцію), щоб це зробити!
Деталі
Ваш код повинен мати додатне ціле число, що відображає розмір плати, через STDIN, ARGV або аргумент функції. Виведіть шаблон шаблону в STDOUT (ви можете по черзі повернути його як рядок, якщо ваше подання є функцією).
Вихід повинен бути будь-яким
- взагалі не мають пробілів, або
- мати достатньо пробілів, щоб заповнити візерунок до ідеального прямокутника шириною 6 * N + 1.
Необов'язково вихідний рядок може мати зворотний новий рядок. Ніякі інші додаткові (провідні, кінцеві) пробіли не дозволені.
Приклади
Розмір 1:
G
B . . Y
. . .
P . . O
R
Розмір 2:
G
G G
B B . . . Y Y
B . . . . Y
. . . . .
P . . . . O
P P . . . O O
R R
R
Розмір 4:
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
Оцінка балів
Це код-гольф : виграє найкоротший код у байтах.