Excel 列名変換


Excel列名変換問題で第2回社内プログラミングコンテストを開催してみた

Perl 書けないので Ruby と Python で書いた。あとコマンドラインで引数渡して……という部分は省いて、それぞれ単純な関数にしてある。


Ruby

Ruby 1.9.3 で確認。

Python

Python 2.7.2、Python 3.2.2 で確認。


最初に Ruby の方を大体制限時間内で書いて、あとから友だちの Rubyist、@hidachinoiro に教えてもらったりしてリファクタリング。その後 Python に移植。

Perl で書くともっと難しそう。Ruby 最初からいろいろできて便利。Python は Ruby と同じことするのに3つもモジュールをインポートしてる1けど、やろうと思えばモジュール使わずに同じ機能を実装できる。コードの量は増える。

プログラミングコンテストとしては現実にありそうな良問だと思う。ただ慣れてる人ならもっと簡単に解けそう。


  1. Python 2 だけなら2つで良いけど Python 3 で reduce()functools に移動してた