寻找1~k内i的倍数,则这个数可以看成i*x,则下一个数为(i+1)*y,(i+1)*y>=i*x,那么可以推出,y=x-x/(i+1);
那么当x
#include __int64 x,y,k; int main() { __int64 i; int flag; __int64 sum; int cas=0; while(scanf("%I64d%I64d",&x,&k)!=EOF) { sum=x; flag=0; if(x==0&&k==0) { break; } for(i=1;i