五只猴子摘了一堆桃子,可是怎么也平分不了。于是一致同意先去睡觉,明天再分。夜里,一只猴子偷偷起来,先吃掉一个桃子,剩下的桃子正好平分成5份。它蒇起自己的1份,然后再去睡觉。过了一会,第二只猴子起来,也吃掉1个桃子,剩下的桃子也正好平分成5份。它也藏起了自己的1份,然后再去睡觉。第三只、第四只和第五只也都依次这样做。问最初那堆桃子至少有多少个?
小学题目,拿来大家娱乐一下,题目百度就有。

解决方案 »

  1.   

    http://www.zhshxx.com/zsxx/Controls/NewsShow.aspx?ID=168原题在这里
      

  2.   

    又来了啊
    这次我不code了,纯接分
      

  3.   

    美女头像呢...我怎么算出来是1291  public static void main(String[] args) throws Exception {
        for (int i = 1; ; i++) {
          try {
            System.out.println(foo(i, 4));
            return;
          } catch (Exception e) {
            continue;
          }
        }
      }  static double foo(int x, int n) {
        if (n <= 0) {
          return x;
        }
        double y = foo(x, n - 1) * 6 / 5;
        if (y != (int) y) {
          throw new RuntimeException();
        }
        return y + 1;
      }
      

  4.   

    看错了题目,
      public static void main(String[] args) throws Exception {
        for (int i = 5;  ; i+=5) {
          try {
            System.out.println(foo(i, 5));
            return;
          } catch (Exception e) {
            continue;
          }
        }
      }  static double foo(int x, int n) {
        if (n <= 0) {
          return x;
        }
        double y = foo(x, n - 1) * 5 / 4;
        if (y != (int) y) {
          throw new RuntimeException();
        }
        return y + 1;
      }
      

  5.   

    刚才蛋疼算了一下,如果有n个猴子,每次每个猴子吃一个,然后分成n份。如此循环下去,那么至少有
    n^n - (n - 1)个桃子
    因为每次先吃一个再分n份,取其中n-1份
    第一次
    n^n - (n - 1) - 1 = n^ n -n
    ((n^n - n) / n ) * (n-1)= (n^(n-1) - 1)*(n-1)
    =n^n-n-n^(n-1) + 1
    = n^n - n^(n-1)-(n-1)
    再吃一个又可以被n整除了,以下同理
    所以结果就是n^n - (n - 1)int result(int n){
        return Math.pow(n,n) - n + 1;
    }