Você é um explorador, mapeando um mundo desconhecido. Seu navio é levado pelo vento. Para onde vai, quem sabe?
Todos os dias, na luneta, você vê recursos ao norte, sul, leste e oeste. Você sempre vê quatro desses recursos, correspondentes às direções cardeais. Sua luneta relata símbolos ASCII como este:
~~.*
, ~~~~
, ~.^^
,~#~#
Os símbolos estão na ordem (norte, sul, leste, oeste).
Estes são os símbolos: ~
= mar, .
= costa, ^
= montanha, *
= árvore, #
= inválido (nenhuma observação, isso ocorre sempre que você vê a borda do mundo ou a paisagem é obscurecida pelo nevoeiro). Sua luneta vê exatamente uma unidade em todas as direções.
Todas as noites, você olha para as estrelas para ver até onde você viajou. Olhar para as estrelas relata um símbolo ascii como este:
n
, s
, e
,w
correspondendo a norte, sul, leste e oeste, respectivamente. Você sempre move exatamente uma unidade para o norte, sul, leste ou oeste todas as noites. Então você, como explorador, receberá um fluxo interminável de símbolos:
~~.*n~~~~s~~.*s~.**
Sua tarefa é produzir um mapa 2D do mundo (onde ?
existem partes desconhecidas do mapa, o norte está no alto, o leste está no lado direito):
?~~~??????
?~~~??????
?~~~.^^.??
?~~.***.~~
~~.*^^*.~~
~~~..~~~~~
~~~~~~~~~~
~~~~~~~~~~
Por uma questão de simplicidade, vamos supor que você comece no canto inferior esquerdo do mapa. Suponha que todos os mapas sejam 8x8.
Aqui está um exemplo simples de 3x3. Suponha que o mapa fique assim:
~.~
~^~
~.~
Com a seguinte entrada: ~#.#n~~^#s
Você obterá esta saída:
~??
~^?
~.?
Mais exemplos de entradas e saídas:
entrada
~#~#n~~~#n~~~#n~~~#n~~~#n~~.#n~~.#n#~~#e#.~~e#.~~e#.~~e#.~~e#~~~e#~~~e#~#~s~~#~s~~#~s~~#~s~~#.s~~#~s~~#~s~##~w~#~~w.#~~w^#~~w.#~~
saída
~~~~~~~~
~....~~~
~.????~~
~~????~~
~~????.~
~~????~~
~~?.^.~~
~~~~~~~~
Entrada:
~#~#e~#~~e~#~~e.#~~e^#~~n.~..n~^~.n~.~~n.~~.n.~~*n~.~.n#.~~w#.~~w#.~~s~*..s..*.s*~.~s.~~~s
Saída:
?~~~~~??
?....~??
?.**.~??
?~..~~??
?~~~~~??
?~~..~??
~~~.^.??
~~~~~~??
~#~#n~~~#n~~~#n~~~#n~~~#n~~.#n~~.#n#~~#e#.~~e#.~~e#.~~e#.~~e#~~~e#~~~e#~#~s~~#~s~~#~s~~#~s~~#.s~~#~s~~#~s~##~w~#~~w.#~~w^#~~w
) está errado, ea saída deve ter ??
onde diz?.