一开始我看见那个simple out的时候很无语比我的数差好多感觉好大,以为是应该用2进制表示后来发现时special judge~~
开始的时候数组要开的大一点。。。我re了两次没找到错然后加了3个零然后A掉

#include <stdio.h> __int64 q[10000005],res; int f,r; int main() { __int64 n,i; while(scanf("%I64d",&n)&&n) { f = r = 0; q[r++] = 1; while(f != r) { res = q[f++]; if((res%n) == 0) { printf("%I64d\n",res); break; } q[r++] = res*10; q[r++] = res*10+1; } } return 0; }