O objetivo é simples: dada a sequência de valores de resistência, desenhe a parte do "circuito elétrico" desses resistores. Seguem exemplos.
Entrada:
3
. Resultado:--3--
Entrada:
1,2,3
. Resultado:--1----2----3--
Em seguida, os resistores podem ser unidos em paralelo (por 2 ou 3 resistores por junção), mas a profundidade necessária das junções paralelas é de apenas 1.
Entrada:
1|2
. Resultado:|--1--| -| |- |--2--|
Entrada:
1|2|3
. Resultado:|--1--| -|--2--|- |--3--|
Observe que esse
--2--
resistor está agora centralizado.Entrada:
1|2,3|4|5
. Resultado:|--1--| |--3--| -| |--|--4--|- |--2--| |--5--|
Junções combinadas:
Entrada:
1,2,3|4,5,6|7|8,9
. Resultado:|--3--| |--6--| --1----2---| |---5---|--7--|---9-- |--4--| |--8--|
Se for mais conveniente, a entrada pode ser uma matriz bidimensional. Ou seja, a entrada para o último exemplo ficaria assim: [1,2,[3,4],5,[6,7,8],9]
.
Algumas notas:
- Nenhuma outra forma de (entrada | saída) de venda é permitida.
- A resistência de cada resistor pode variar de 1 a 9. Outros valores, como
-
,42
ou0
não , são permitidos. - As junções como
1|2|3|4
são inválidas. Como já mencionado, no máximo 3 por junção paralela. Junções vazias,...,|,...
ou seja,...,,...
são inválidas. - Ah, e isso é código de golfe :)
Respostas:
Python 2, 195 bytes
Toma entrada como:
Resultado:
fonte