解题思路:
如题,设原有机器人x个:
1年后总数是:(x+(2x-1))=5 + 9 = 14;
2年后总数是:(x+(2x-1)+(2(2x-1)-1))=5 + 9 + 17 = 31;
n年新生存在数=(2*(n-1年的新生数)-送走数1);
n年总数=n年新生存在数+(n-1年基数);
注意事项:
机器人总数s不超过50位,不是不超过50,所以不能定义成int型;
参考代码:
# include <stdio.h>
int main(){
int n,j;
double s,sum,i,a;
scanf("%d%lf",&n,&s);
for(i=0;i<=s/2;i++){
sum=a=i;
j=n;
while(j--){
a=a*2-1;
sum+=a;}
if(sum==s) break;
}
printf("%.0f",i);
}
0.0分
7 人评分
三进制小数 (C++代码)(第11位大于1.5才能进位)浏览:1141 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:639 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:718 |
C语言训练-排序问题<1> (C语言代码)浏览:1348 |
C二级辅导-计负均正 (C语言代码)浏览:647 |
【回文数(二)】 (C语言代码)浏览:728 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:574 |
WU-蓝桥杯算法提高VIP-Quadratic Equation (C++代码)浏览:1742 |
WU-printf基础练习2 (C++代码)浏览:2000 |
Wu-求圆的面积 (C++代码)浏览:1883 |