每天一题(7)-分苹果

曾经终败给现在 2021-11-08 18:48 375阅读 0赞

每天一题-分苹果

  • 题目
      • 代码

题目

在这里插入图片描述

代码

  1. import java.util.Scanner;
  2. /**
  3. * 题目描述:
  4. * https://exercise.acmcoder.com/online/online_judge_ques?ques_id=1654&konwledgeId=134
  5. *
  6. * 果园里有堆苹果,N(1<N<9)只熊来分。第一只熊把这堆苹果平均分为N份,多了一个,它把多的一个扔了,拿走了一份。
  7. * 第二只熊把剩下的苹果又平均分成N份,又多了一个,它同样把多的一个扔了,拿走了一份,第三、第四直到第N只熊都是这么做的,
  8. * 问果园里原来最少有多少个苹果?
  9. *
  10. * 输入:输入1个整数,表示熊的个数。它的值大于1并且小于9。
  11. * 输出:为1个数字,表示果园里原来有的苹果个数。
  12. * 样例输入:5
  13. * 样例输出:3121
  14. *
  15. * @author ydfind
  16. * @date 2019.08.06
  17. */
  18. public class Main {
  19. private static int calc(int n){
  20. int d = 0;
  21. int next = -1;
  22. while (++d < 1000000 && next <= 0){
  23. // 最后一次分剩下的数量必然是n的倍数加1
  24. next = d * n + 1;
  25. for(int i = 0; i < n - 1; i++){
  26. if(next % (n - 1) != 0) {
  27. next = -1;
  28. continue;
  29. }
  30. next = next / (n - 1) * n + 1;
  31. }
  32. }
  33. return next;
  34. }
  35. public static void main(String[] args) {
  36. Scanner cin = new Scanner(System.in);
  37. while(cin.hasNextInt()) {
  38. int n = cin.nextInt();
  39. int count = calc(n);
  40. System.out.println(count);
  41. }
  42. }
  43. }

发表评论

表情:
评论列表 (有 0 条评论,375人围观)

还没有评论,来说两句吧...

相关阅读

    相关 每天道算法

    题目描述1 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一

    相关 Python每天 0000

    开学了,也继续写博客了,暑假期间也写了很多笔记。有空再复习下写在博客上。 很喜欢这个每天一题的~~~ 如有错误,请大牛指出,谢谢。 第一天是对图片的操作,那么就安装

    相关 面试之__苹果(java实现)

    问题是:n 只奶牛坐在一排,每个奶牛拥有 ai 个苹果,现在你要在它们之间转移苹果,使得最后所有奶牛拥有的苹果数都相同,每一次,你只能从一只奶牛身上拿走恰好两个苹果到另一个奶牛

    相关 编程苹果

    题目描述 n 只奶牛坐在一排,每个奶牛拥有 a i  个苹果,现在你要在它们之间转移苹果,使得最后所有奶牛拥有的苹果数都相同,每一次,你只能从一只奶牛身上拿走恰好两个苹果