コードを短く

id:RiSK:20051218 で更に5byte短縮されました。凄い......


が、自分は負けず嫌いです。
このままで自分は気持ち的に満足できるでしょうか? 否!


そういうわけで、RiSKさんのコードを気合とコンパイラ依存のコードの併用で更に5byte短縮!*1

いつものようにネタバレ注意




















というわけで
a++? ... , a &= 3
の部分をa++&3に書き換える。(3byte)
さらに、for文のd=b-c,c=b
を、c+=d=b-cに書き換える。(1byte)
そして最後に関数の引数は右から順に演算されるというコンパイラ依存の仮定をする(1byte)

main(a,b,c,d){for(gets(&c);~scanf("%d",&b);)printf(a++&3?"%d ":"%d %d\n",c+=d=b-c,b-c-d?b/c*b:b+d);}

*1:私は他人のコードの重箱の隅を突つくよりもアルゴリズム考えようよ