Cabric Number Problem(1)
- ワカタ
どうやら4digitでない値が多数含まれているようで、それらはすべてNoとしなければならない模様。それから、0001みたいな入力でも4digitとしないみたいだ。
というわけで、一応通ったコードを晒しておく。
まだまだ縮むみたいなので、自身のあるコーダーはチャレンジして欲しい。
#include<string.h> q(char*a,char*b){return*b-*a;} main(n,s,x,c){ for(;scanf("%d",&n),~n;printf(c?"Ok!! %d times\n":"No!!\n",c-1)) for(c=n%1111*printf("N=%d:\n",n)&&n>999&n<1e4;c*n&&n-6174;++c) sprintf(s,"%4d",n), qsort(s,4,1,strcmp), x=atoi(s), qsort(s,4,1,q), printf("%d-%d=%d\n",n+x,x,n=atoi(s)-x); }
2回ソートしているのがイケてない気がするのだけど、何か良いアイデアないかなぁ・・・。