Most elementary use of C - Silver award
Cのもっとも初歩的な使い方 - 銀賞
受賞者:Tsukasa Hamano
引用元:https://www.ioccc.org/2012/hamano/hamano.c
審査員・作者による説明:https://www.ioccc.org/2012/hamano/hint.html
動作
シャーロック・ホームズの作品の1つ『踊る人形』に出てくる暗号化を入力テキストに対して行い、PDFとして出力する。
$ gcc -o hamano hamano.c
$ ( echo "Hello, world!"; echo; echo; cat hamano.c ) | ./hamano > tmp.pdf
左上に”Hello, world!”を暗号化した人形たちがあり、その下にhamano.cの中身をまるごと暗号化したものが表示されている。
対応する人形が定義されていない文字はそのまま表示されている。
このPDFはC言語プログラムとして解釈できるようになっており、コンパイル・実行すると元のテキストが出てくる。
$ gcc -o tmp -xc tmp.pdf
$ ./tmp
Hello, world!
解説
独自フォント情報を持つPDFを生成するプログラム。
フォント情報もコード中に埋め込まれている。
作者自身が日本語で実装を解説しているので、参照されたい。
コード形状も踊る人形。ちなみに’A’に対応する文字。
賞名の”elementary”は、シャーロック・ホームズを象徴するフレーズ、”It’s elementary, my dear Watson.”(初歩的なことだよ、ワトソンくん)から。