最高のツール
引用元:https://www.ioccc.org/2020/kurdyukov1/prog.c
審査員・作者による説明:https://www.ioccc.org/2020/kurdyukov1/index.html
MD5の計算。
$ gcc -o prog prog.c
$ ./prog < prog.c
72b77b046d302556e6b3408beb88603d
$ md5sum prog.c
72b77b046d302556e6b3408beb88603d prog.c
コード形状は円。
ポイントは、MD5計算のコードをどのくらい小さくできるか。
MD5の数表は直接コードにもたせるには巨大だが、sin関数をベースに作られているので、実行時に生成できる。
ただし浮動小数点数は再現性に難があるので使わない方針で書かれている。