Pascal程序练习-狼找兔子

来源:互联网 发布:app自制软件 编辑:程序博客网 时间:2024/06/06 15:13
狼找兔子
时间限制: 10000ms内存限制: 1024kB
描述
一座山周围有n个洞,顺时针编号为0,1,2,...n-1.
而一只狼从0号洞开始,顺时针方向计数,每遇到m个洞就进洞找兔子.例如n=5,m=3,狼经过的洞依次为0,3,1,4,2,0.那么兔子有没有幸免的机会?如果有,该藏在哪儿?

输入
n m (<2.1*10^9)
输出
若兔子有幸免的机会则输出所有可以藏身的洞,输出洞的个数,反之,输出-1。
样例输入
5 1
样例输出
-1
参考代码

program psj004;varn,m,v:LongInt;function max(a,b:LongInt):LongInt;beginbeginif a > b thenmax := aelsemax := bend;end;function min(a,b:LongInt):LongInt;beginbeginif a > b thenmin := belsemin := aend;end;function gcd(a,b:LongInt):LongInt;varmx,mn,mm:LongInt;beginmx := max(a,b);mn := min(a,b);mm := mx mod mn;beginif mm = 0 thengcd := mnelsegcd := gcd(mm,mn)end;end;beginreadln(n,m);v := n - n div gcd(n,m);beginif v = 0 thenwriteln(-1)elsewriteln(v)end;end.
原创粉丝点击