Nos Estados Unidos , as duas direções opostas de tráfego em uma estrada são separadas por uma linha amarela tracejada se a passagem for permitida e duas linhas amarelas sólidas se a passagem não for permitida.

(Apenas um lado pode ser tracejado para permitir a passagem desse lado, e as linhas amarelas podem significar outras coisas, como faixas centrais ou reversíveis, mas não estamos preocupados com nenhum desses casos.)
Escreva um programa que utilize uma sequência codificada de comprimento de Pexecução de para passagem e Npara não passagem e imprima uma versão ASCII da estrada correspondente. Exceto pela linha central, a estrada sempre tem o mesmo padrão, que pode ser facilmente deduzido dos exemplos abaixo.
Haverá um número decimal positivo antes de cada um Pe Nna sequência de entrada. Este número define o comprimento da região de passagem ou não da parte atual da estrada.
Exemplos
Uma entrada de 12Nproduziria 12 colunas de nenhuma estrada que passa (linha central todas =):
____________
============
____________
Uma entrada de 12Pproduziria 12 colunas de estrada que passa ( - repetição da linha central ):
____________
- - - - - -
____________
Passagem e não passagem podem então ser combinadas, por exemplo 4N4P9N7P1N1P2N2P, produziriam:
______________________________
====- - =========- - - -=-==-
______________________________
Estas são 4 colunas sem passagem , depois 4 com passagem , depois 9 sem passagem , etc.
Observe que uma zona de passagem sempre começa com um traço ( -) no lado esquerdo, não um espaço ( ). Isso é necessário.
Detalhes
- A entrada nunca terá duas
Nzonas ou duasPzonas seguidas. por exemplo4P5P, nunca ocorrerá. - Você não precisa apoiar letras sem um número positivo inicial. A planície
Psempre será1P, a planícieNsempre será1N. - Pode haver espaços à direita, desde que não ultrapassem a coluna final da estrada. Pode haver uma nova linha opcional à direita.
- Em vez de um programa, você pode escrever uma função que aceita a cadeia codificada no comprimento da execução e imprime ou retorna a estrada ASCII.
- Recebe entrada de qualquer maneira padrão (stdin, linha de comando, função arg).
O código mais curto em bytes vence. O desempatador é um post anterior.