131. alternating harmonic series

x,m,i;main(n){for(;x=++i%21*6;printf("%d/%d\n",m/=x,n/=x))for(m=m*i+i%2*2*n-n,n*=i;m%--x+n%x;);}


分数を既約分数にするところが問題で、このコードではm,nの最大公約数がi*5以下であることを用いている。
きわどいコードだけど通ればOKということで。
一年以上縮まっていなかった問題を縮めれたのでかなり嬉しかったです。