printРабочее место участника

printЗадачи

1000. Салют

Ограничения: время – 1s/2s, память – 16MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Изображение праздничного салюта имеет вид прямоугольной таблицы, состоящей из `H` строк по `W` символов каждая. Салют представлен `N` вспышками различного радиуса. Вспышка радиуса 1 изображается символом '*' (ASCII 42), вспышка радиуса 2 выглядит так:
\|/
-*-
/|\
Вспышка большего радиуса `r` изображается в виде центральной звёздочки и восьми расходящихся диагональных линий, нарисованных при помощи `r-1` символов '-' (ASCII 45), '|' (ASCII 124), '/' (ASCII 47) либо '\' (ASCII 92) каждая. Все позиции, не занятые вспышками, должны быть заняты символами '.' (ASCII 46).
Требуется по описанию набора вспышек построить изображение салюта.
Ввод
Входной файл содержит числа `W` `H` `N` за которыми идут `N` троек чисел `x_i\ y_i\ r_i`, где `x` – номер колонки, `y` – номер строки, `r` – радиус вспышки.
Вывод
В выходной файл должно быть выведено `H` строк по `W` символов каждая – изображение салюта. Вспышки накладываются на изображение в том порядке, в котором они встречаются во входном файле.
Ограничения
`1\ ≤\ W,\ H,\ N\ ≤\ 100`, `-100\ ≤\ x_i,\ y_i\ ≤\ 200`, `1\ ≤\ r_i\ ≤\ 100`

Пример ввода

10 10 4
5 5 1
3 2 7
9 4 3
3 20 11

Пример вывода

.\|/......
--*---\-|.
./|\...\|/
/.|.\.--*-
..|.*\./|\
..|.../.|.
..|....\..
..|.....\.
..........
..|.......
Источник: А. Кленин, ДВГУ, Весенний турнир, 2005
loading