专栏文章

B2076 球弹跳高度的计算 题解

B2076题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@minawjvd
此快照首次捕获于
2025/12/01 23:25
3 个月前
此快照最后确认于
2025/12/01 23:25
3 个月前
查看原文

B2076 球弹跳高度的计算 题解

找规律

弹跳次数经过米数高度
11h+h22h+\frac{h}{2}\cdot 2h21\frac{h}{2^1}
22h+2(h2+h4)h+2\cdot(\frac{h}{2} + \frac{h}{4})h22\frac{h}{2^2}
33h+2(h2+h4+h8)h+2\cdot(\frac{h}{2}+\frac{h}{4}+\frac{h}{8})h23\frac{h}{2^3}
..................
1010h+2(h2+h4+...+h512)h+2\cdot(\frac{h}{2}+\frac{h}{4}+...+\frac{h}{512})h210\frac{h}{2^{10}}

10次弹跳后的高度为h1024\therefore 第10次弹跳后的高度为\color{green}\frac{h}{1024}

h+2(h2+h4+...+h512)=h(1+1+121+122+...+128) h+2(\frac{h}{2}+\frac{h}{4}+...+\frac{h}{512})\\ =h\cdot(1+1+\frac{1}{2^1}+\frac{1}{2^2}+...+\frac{1}{2^8})
利用等比数列求和公式得(q为等比)(q为等比)
S=1+a1anqq=1+112561212=767256\begin{aligned} S &= 1+\frac{a_1-a_n*q}{q}\\ &= 1+\frac{1-\frac{1}{256}\cdot\frac{1}{2}}{\frac{1}{2}}\\ &= \frac{767}{256} \end{aligned}

10次弹跳后共经过米数为h767256\therefore 第10次弹跳后共经过米数为\color{green}h\frac{767}{256}

奉上代码(注意精度):
CPP
#include <iostream>
int main(){
	int h; std::cin >> h;
	std::cout << h * 767.0 / 256.0 << std::endl << h / 1024.0;
	return 0;
}
Aceepted\color{green}Aceepted

评论

0 条评论,欢迎与作者交流。

正在加载评论...