このコードがすごい! 2010 小テク部門

inaniwaさんのブログに便乗してすごい小テクを使っているコードを選んでみました。


a prime number by 51b

main(n){for(;printf("%.d",83-n++););}

printf("%.d",0)が何も出力しないという仕様。
(inaniwaさんもほぼ同じコードを書いてますがこのテクニックは51bさんが先に気づいたそうなので51bさんのコードを載せています。)


sort numbers by msk

N['HxH'];main(i){for(;~scanf("%d",N)&i?N[*N]=*N:!N[++i]||printf("%d ",i)-8;);}

scanf("%d",N)で入力を読むアイディア。


Big Number by inaniwa

i=22;main(){for(;i<&i;i*=7/3.)printf("%d",i);}

&iの値を終了条件に使うという謎発想。


Factorization corrected by nai

main(b,c){for(;~scanf("%d %d\n",&b,&c);printf(""-6,b-c,c=sqrt(b*b/4-c)-~b/2));}

""-6でscanfの第一引数を再利用するテクニック。


Bigger power of two by nn

main(s){for(;gets(&s);printf("%d\n",2<<(atof()>>20)+1));}

何故か浮動小数点型をビットシフトできている謎コード。


すごいテクニックばっかりです。こんなのどこから出てくるんですかね・・・。
それでは、よいお年を。


おまけ
・選外
Collatz Problem by not

main(_,i){for(i=~i%40;i/printf("%d\n",i);)i=i%2?i*3+1:i/2;}

mainの第二引数は-16n-12になっているというのを使って通る確率を最大まで上げたコード。