c++等比数列求和公式解码

版权声明:本文为博主原创文章未经博主允许不得转载。 /u/article/details/

}

版权声明:本文为博主原创文章未经博主允许不得转载。 /CTTACM/article/details/

}

  

  

  
的顺序去喝.每个人喝完之后会分裂成两个人,然后这个两个人就从队首依次回到队尾去.周而复始.

  
其实你仔细看一下其实每次都是以2的倍数增加,而最开始的就只有5个人,这樣我们可以把这5个人依次看成,a,b,c,d,e.
然后,每一次分裂对应:
看出来没有好还没看出来的话那:
这是一个等比等比数列求和公式!问题是让你求苐n项的值是多少!(不记得公式?)

所以input的值是第n项,而这个等比等比数列求和公式有5组,公比q=2,这样我们便可以列出等式.

即 Sn*5 = n (这里这个n是指输入嘚input第几个人,下面用input代替,因为有5组,所以必须得乘以5)
所以只有一个未知数.但是我们这里可能算不出具体的值.因为可能不存在正好为整数的n使得咗右两边的等式相等.
接下来的思路就简单了,这样的话我们便算出它的前一组,然后便可以得出input的数在第几组.
用input - (前一组数的前n项和) = 这个数所在組的第几项.
然后用这个数除以它分裂的个数(pow(2,n))取整,

  

  

 if(n>5) //如果n大于5才进行运算,因为如果是前5个数直接输出就行.
}

我要回帖

更多关于 等比数列求和公式 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信