Вы организуете охоту за сокровищами для своих друзей. Чтобы вести вещи проще, вы хотите нарисовать карту всех мест, где вы спрятали драгоценные предметы.
вход
0 0
Разрешается любая форма ввода, обозначающая список точек, состоящих из (неотрицательных) координат x и y, являющихся верхним левым углом (Примечание. Вы также можете использовать индексирование на основе 1 в своем ответе, пожалуйста, прокомментируйте это, если вы делаете ). Пример:
1 2
3 0
0 1
Вызов
Ваша функция или программа должны быть в состоянии построить карту, обозначающую каждое заданное местоположение с x
меткой, в которой отметка находится в строке y + 1 и столбце x + 1 в выходных данных. Неотмеченные местоположения обозначены как . Карта также состоит из фрейма, где углы равны
+
s, вертикальные линии - |
s, а горизонтальные - -
s. Ваше решение должно выводить наименьший возможный кадр. Карта для входного примера приведена выше:
+----+
| x|
|x |
| x |
+----+
Возможные тестовые случаи
"0 0"
=>
+-+
|x|
+-+
"0 10
5 5
10 0"
=>
+-----------+
| x|
| |
| |
| |
| |
| x |
| |
| |
| |
| |
|x |
+-----------+
""
=>
++
++
"0 0
0 2
2 0"
=>
+---+
|x x|
| |
|x |
+---+
Конечно, это код-гольф , то есть выигрывает решение с наименьшим количеством байтов! Пояснения вашего решения приветствуются.
the input is a list of locations (e.g. nested list, list of tuples, space & newline separated, separate inputs, ect.)