小东分苹果

果园里有一堆苹果,一共n头(n大于1小于9)熊来分,第一头为小东,它把苹果均分n份后,多出了一个,它扔掉了这一个,拿走了自己的一份苹果,接着第二头熊重复这一过程,即先均分n份,扔掉一个然后拿走一份,以此类推直到最后一头熊都是这样(最后一头熊扔掉后可以拿走0个,也算是n份均分)。问最初这堆苹果最少有多少个。
给定一个整数n,表示熊的个数,返回最初的苹果数。保证有解。
测试样例:
2
返回:3
 
 1 class Apples {
 2 public:
 3     int getInitial(int n) {
 4         // write code here
 5     for(int i = n+1;;i++)
 6     {   
 7         int xiong = n;
 8         int temp=i;
 9         while(xiong>0){
10             if(temp%n==1){
11                 temp=temp-(temp-1)/n-1;
12                 xiong--;
13             }
14             else{
15                 break;
16             }
17         }
18             if(xiong==0)
19                 return i;
20         }
21     }                  
22             };

 

posted @ 2018-04-07 22:51  newmoonn  阅读(160)  评论(0编辑  收藏  举报