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つのコードを見たらあまり数学してないことに気が付いた。
あれ?問題は数学なのになあ。