歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java程序練習-狼找兔子

Java程序練習-狼找兔子

日期:2017/3/1 11:16:39   编辑:Linux編程

狼找兔子
時間限制: 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
參考代碼

  1. /*
  2. * wolf hunts rabbit 2011-10-2 12:24PM Eric Zhou
  3. */
  4. import java.util.Scanner;
  5. public class Main {
  6. public static void main(String[] args) {
  7. Scanner cin = new Scanner(System.in);
  8. int a = cin.nextInt();
  9. int b = cin.nextInt();
  10. int v = a - a / gcd(a,b);
  11. if(v == 0)
  12. System.out.println(-1);
  13. else
  14. System.out.println(v);
  15. }
  16. private static int gcd(int a, int b) {
  17. int max = Math.max(a, b);
  18. int min = Math.min(a, b);
  19. int mod = max % min;
  20. if (mod == 0) {
  21. return min;
  22. }else {
  23. return gcd(mod, min);
  24. }
  25. }
  26. }
Copyright © Linux教程網 All Rights Reserved