Tarefa
Leia o conteúdo de uma tabela com um conjunto de coordenadas.
Formatação de tabela
As tabelas estarão neste formato básico:
|[name]|[name]|
---------------------
[name]| [val]|[val] |
[name]| [val]|[val] |
Os nomes das colunas são sempre exclusivos nas colunas . Os nomes das linhas também são exclusivos nas linhas . Isso inclui nomes iguais, exceto espaços em branco. Valores, nomes de colunas e nomes de linhas nunca terão |-
dentro deles. Nomes e valores nunca terão espaços dentro deles, mas podem ter espaço à esquerda ou à direita. A largura da coluna é ajustável com base no cabeçalho / conteúdo. A largura da coluna é sempre consistente de cima para baixo.
Entrada
Uma tabela e uma lista separada por espaço de [name]
s.
Exemplo
[table]
row col
Se você estiver escrevendo uma função, essas podem ser cadeias separadas, caso contrário row col
, sempre será a última linha da entrada. row col
possui alguma flexibilidade para o formato e pode ser representado de várias maneiras. (por exemplo (row, col)
, r, c
...). O único requisito difícil é que seja uma linha e que apareça na ordem col row
.
Resultado
O conteúdo de uma célula especificada pela entrada sem espaço à esquerda ou à direita da célula .
Exemplos
In:
|a|z |_*|
------------
atb|1|85|22|
b |5|6 |e$|
/+*|8|we|th|
atb a
Out:
1
In:
| x| b |
----------
ab|l |mmm|
b |le| l |
b b
Out:
l
In:
|a|z |_*| ab |
-------------------
atb|1|85|22| 5 |
b |5|6 |e$| 8 |
/+-|8|we|th| 126 |
atb ab
Out:
5
Respostas:
Retina, 90 bytes
Meu primeiro grupo de equilíbrio regex. Ainda deve ser bem jogável. Tentará fazer isso mais tarde.
A idéia principal é contar os tubos até o nome da coluna e, em seguida, usar a mesma quantidade de tubos na linha, começando com o nome da linha desejada. Depois disso, capturamos o próximo valor, que é o resultado.
Experimente online aqui.
fonte
JavaScript (ES6), 108
TESTE no Firefox
fonte
Haskell,
117116111 bytesExemplo de uso:
Como funciona:
fonte