No Excel, as colunas variam A-Z, AA,AB,AZ,BA,..,BZ
e assim por diante. Na verdade, eles representam números, mas são codificados como seqüências de caracteres do alfabeto.
Neste desafio, você receberá uma sequência de alfabetos e deverá calcular a coluna à qual corresponde.
Alguns testes:
'A' retorna 1 (o que significa que é a primeira coluna)
'B' retorna 2
'Z' retorna 26
'AA' retorna 27
'AB' retorna 28
'AZ' retorna 52
'ZZ' retorna 702
'AAA' retorna 703
Você pode assumir que apenas as letras maiúsculas serão fornecidas.
Os bytes mais curtos vencem.
Boa sorte!
Z
como 10 de qualquer maneiraRespostas:
Perl 6 , 17 bytes
Experimente online!
Bloco de código anônimo que subtrai 64 de cada valor de byte e converte da base 26 com
Z
transbordamento para a próxima coluna.fonte
Planilhas Google, 21 bytes
(a fórmula é avaliada como resultado, obtém entrada da célula A1)
fonte
R ,
4843 bytes-5 bytes graças a @ Giuseppe, usando a mesma lógica, mas como um programa que elimina a
nchar
chamada.Experimente online!
fonte
Java (JDK) , 39 bytes
Experimente online!
fonte
Python 2 ,
5245 bytesExperimente online!
fonte
05AB1E , 6 bytes
Experimente online!
fonte
žx
vez de apenas64
?Haskell ,
383431 bytesExperimente online!
fonte
PHP,
4138 bytes-3 graças a Jo King.
correr como tubo com
-nr
saída unária, 34 bytes:
requer PHP 7.1. salve em arquivo, execute como pipe com
-nF
.fonte
Geléia , 7 bytes
Experimente online!
fonte
APL (NARS), 11 caracteres, 22 bytes
teste
fonte
C (gcc) ,
46, 43 bytesExperimente online!
Degolf
fonte
JavaScript (Node.js) , 48 bytes
Experimente online!
fonte
.map()
é 1 byte mais curto . UsarBuffer()
salva outro byte .Planilhas Google, 100 bytes
(a fórmula é avaliada como resultado, obtém entrada da célula A1)
Todos os espaços são adicionados apenas para maior clareza.
Nota .
row(indirect("1:"&len(A1))
.decimal
função, a transliteração levaria muitos bytes.fonte
APL + WIN, 12 bytes
Origem do índice 1.
Experimente online! Cortesia de Dyalog Classic
Explicação:
fonte
Java (JDK) , 92 bytes
Experimente online!
Resultado
fonte
p
en
. 92 bytes! .static
para obter 7 bytes. Você também pode tornar essa função um lambda para poupar mais bytes. Eu também acho que a versão recursiva pode salvar bytes. De qualquer forma, aqui está minha solução de 39 bytes .MATL , 11 bytes
Experimente online!
fonte
Kotlin , 36 bytes
Experimente online!
fonte
Ruby , 18 bytes
Experimente online!
fonte
J , 11 bytes
Experimente online!
Como funciona
fonte
Japonês
-h
, 10 bytesTente
Ou sem bandeira. O primeiro byte pode ser removido se pudermos receber a entrada como uma matriz de caracteres.
Tente
Explicação
fonte
Ruby
-nl
, 39 bytesExperimente online!
fonte
APL (Dyalog Classic) , 11 bytes
Experimente online!
fonte
J , 20 bytes
Experimente online!
Explicação:
fonte
Carvão , 10 bytes
Experimente online! Link é a versão detalhada do código. Explicação:
fonte
Adiante , 22 bytes
Experimente online!
fonte
MBASIC , 84 bytes
Resultado:
fonte
código de máquina x86, 19 bytes
Montagem:
Experimente online!
fonte
Kotlin , 29 bytes
Experimente online!
Explicado
fonte