Входные данные:
1
X
X
X
X XX XXXXXX X X X
X XX XXXXXX X X X
XXX X XX XXXXXX X X X
XXX X XX XXXXXX X X X
Выход:
X.
X..
X...
X.... XX. XXXXXX. X.X.X.
X..... XX.. XXXXXX.. X.X.X..
XXX. X......XX... XXXXXX... X.X.X...
XXX.. X......XX....XXXXXX.... X.X.X....
Входные данные:
2
XX
XX
XX
XX
XX
XX XX
XX XX
XX XX
XX XX
Выход:
.XX
..XX
...XX
....XX
.....XX
..XX..XX
...XX..XX
....XX..XX
.....XX..XX
Спецификация:
- Вы должны принять в качестве входных данных
- Флаг, указывающий, идет ли свет сверху слева или сверху справа. Это может быть
1
или2
,-1
или1
,0
или65536
, или то, что вам удобно, если оба флага являются целыми числами. - Строки состоят из одного
X
иливсех символов одинаковой длины (т. Е. Дополнены
)
- Все
X
s либо будут находиться в последнем ряду, либо будут иметьX
под ними (что означает отсутствие плавающих зданий)
- Все
- Флаг, указывающий, идет ли свет сверху слева или сверху справа. Это может быть
- Вы должны вывести строки (здания) с добавленными тенями. Это делается с помощью следующей процедуры:
- Если свет идет сверху слева, нарисуйте прямоугольный треугольник
.
s с той же высотой и шириной, что и высота здания, начиная с одного пространства за его правым краем и направляясь вправо. - В противном случае, если это сверху справа, сделайте то же самое, но начните с одного пробела за левым краем и указав налево.
- Помните, не изменяйте
X
s, изменяя их на.
s; оставь их как есть. - Для ваших теней всегда будет «место», т. Е. Если в конце есть трехэтажное высотное здание, то после него будет как минимум 3 пробела.
- Если свет идет сверху слева, нарисуйте прямоугольный треугольник
- Это код-гольф , поэтому выиграет самый короткий код в байтах!
potato
и while(1){}
. Как указано в вопросе, «все, что удобно».
Regex.Replace
которой я не могу обойтись ... у меня сейчас две проблемы?
{}
и{-1*}
как значения флага?