The challenge
The shortest code by character count that will output the numeric equivalent of an Excel column string.
For example, the A column is 1, B is 2, so on and so forth. Once you hit Z, the next column becomes AA, then AB and so on.
Test cases:
A: 1
B: 2
AD: 30
ABC: 731
WTF: 16074
ROFL: 326676
Code count includes input/output (i.e full program).
Perl,
3634333130171511 charactersUsage:
Reduced to 17 by using echo -n to avoid a
chopcall.Reduced to 15 by using say instead of print.
Reduced to 11 by using -p instead of say.
Explanation:
Ais evaluated in string context andA..$_builds a list starting at “A” and string-incrementing up to the input string. Perl interprets the++operator (and thus..) on strings in an alphabetic context, so for example$_="AZ";$_++;printoutputsBA.=()=(aka “goatse” operator) forces an expression to be evaluated in list context, and returns the number of elements returned by that expression i.e.,$scalar = () = <expr>corresponds to@list = <expr>; $scalar = @list.