anarchy golfで数学

数学する前にSmilyes Triangeの記録を見たら最短コードが61Bになってた・・・だと・・・?
63Bが最短だと思ってたらまだ縮むのか。
世の中凄い人がたくさん居るものだなあ。

e

ネイピア数を小数点以下100桁まで表示せよっていう問題。
普通に計算すると長くなりそうだったので、ぱっと見て一番最初に思いついたのを提出した。
何の工夫もないけど一番妥当な感じ。118B。
でも1位の方のは普通に計算してそうな気配が。どうやってるんだろう。

main()
{
  puts("27182818284590452353602874713526624977572470936999595749669676277240766303535475945713821785251664274");
}

上記のコードではあまりにも芸がないので、数値を文字定数で出力しようと思って文字の並びを探してみた。
最初の7桁は2718281は文字定数')zI'で表示できる。
と、ここで日記の余白が足りなくなったので驚くべきコードを書き記せなくなった。
すいません、全然見つからなくて諦めましたorz

Hamming Numbers

ハミング数を指定された数だけ表示せよっていう問題。
ちなみにハミング数とは1に2,3,5を0回以上掛け算して得られた値のことをいうんだそうな。
1に2,3,5をそれぞれ1回づつ掛けた値はハミング数、得られたハミング数に2,3,5を何度掛けてもハミング数。
みたいな解き方でやってみた。131B。
事前に計算しておいて後から必要なだけ取り出してるからコードが長くなってしまった。

j,k,h['zz'];

main(i)
{
  scanf("%d", &j);

  for(h[i] = 1; i < 999; i++)
    h[i] ? h[i*2] = h[i*3] = h[i*5] = 1 : 0;
  for(i = 0; k < j; i++)
    h[i] ? printf("%d\n", i), k++ : 0;
}


ここまで書いて2つのコードを見たらあまり数学してないことに気が付いた。
あれ?問題は数学なのになあ。