Di Excel, kolom berkisar dari A-Z, AA,AB,AZ,BA,..,BZ
dan seterusnya. Mereka masing-masing berdiri untuk angka, tetapi lebih dikodekan sebagai string alfabet.
Dalam tantangan ini, Anda akan diberi serangkaian huruf, dan Anda harus menghitung kolom yang sesuai dengannya.
Beberapa tes:
'A' mengembalikan 1 (artinya kolom pertama)
'B' mengembalikan 2
'Z' mengembalikan 26
'AA' mengembalikan 27
'AB' mengembalikan 28
'AZ' mengembalikan 52
'ZZ' mengembalikan 702
'AAA' mengembalikan 703
Anda dapat mengasumsikan bahwa huruf kapital hanya akan diberikan.
Bytes terpendek menang.
Semoga berhasil!
Z
sebagai 10Jawaban:
Perl 6 , 17 byte
Cobalah online!
Blok kode anonim yang mengurangi 64 dari setiap nilai byte dan mengkonversi dari basis 26 dengan
Z
meluap ke kolom berikutnya.sumber
Google Sheets, 21 byte
(rumus mengevaluasi hasil, mengambil input dari sel A1)
sumber
R ,
4843 byte-5 byte terima kasih kepada @Giuseppe, menggunakan logika yang sama, tetapi sebagai program yang menghilangkan
nchar
panggilan.Cobalah online!
sumber
Java (JDK) , 39 byte
Cobalah online!
sumber
Python 2 ,
5245 byteCobalah online!
sumber
05AB1E , 6 byte
Cobalah online!
sumber
žx
bukan saja64
?Haskell ,
383431 byteCobalah online!
sumber
PHP,
4138 byte-3 Terima kasih kepada Jo King.
dijalankan sebagai pipa dengan
-nr
output unary, 34 byte:
membutuhkan PHP 7.1. simpan ke file, jalankan sebagai pipa dengan
-nF
.sumber
Jelly , 7 byte
Cobalah online!
sumber
APL (NARS), 11 karakter, 22 byte
uji
sumber
C (gcc) ,
46, 43 byteCobalah online!
Degolf
sumber
JavaScript (Node.js) , 48 byte
Cobalah online!
sumber
.map()
adalah 1 byte lebih pendek . MenggunakanBuffer()
menyimpan byte lain .Google Sheets, 100 byte
(rumus mengevaluasi hasil, mengambil input dari sel A1)
Semua ruang ditambahkan hanya untuk kejelasan.
Catatan .
row(indirect("1:"&len(A1))
.decimal
fungsi, transliterasi akan membutuhkan banyak byte.sumber
APL + WIN, 12 byte
Asal indeks 1.
Cobalah online! Atas perkenan Dyalog Classic
Penjelasan:
sumber
Java (JDK) , 92 byte
Cobalah online!
Keluaran
sumber
p
dann
. 92 byte! .static
untuk mendapatkan 7 byte. Anda juga bisa menjadikan fungsi ini lambda untuk menyimpan lebih banyak byte. Saya juga berpikir bahwa versi rekursif dapat menghemat byte. Bagaimanapun, inilah solusi 39 byte saya .MATL , 11 byte
Cobalah online!
sumber
Kotlin , 36 byte
Cobalah online!
sumber
Ruby , 18 byte
Cobalah online!
sumber
J , 11 byte
Cobalah online!
Bagaimana itu bekerja
sumber
Japt
-h
, 10 byteCobalah
Atau tanpa bendera. Byte pertama dapat dihapus jika kita dapat mengambil input sebagai array karakter.
Cobalah
Penjelasan
sumber
Ruby
-nl
, 39 byteCobalah online!
sumber
APL (Dyalog Classic) , 11 byte
Cobalah online!
sumber
J , 20 byte
Cobalah online!
Penjelasan:
sumber
Arang , 10 byte
Cobalah online! Tautan adalah untuk mengucapkan versi kode. Penjelasan:
sumber
Di depan , 22 byte
Cobalah online!
sumber
MBASIC , 84 byte
Keluaran:
sumber
kode mesin x86, 19 byte
Majelis:
Cobalah online!
sumber
Kotlin , 29 byte
Cobalah online!
Dijelaskan
sumber