当前位置: 首页 > news >正文

桂林北站到龙脊梯田/成都业务网络推广平台

桂林北站到龙脊梯田,成都业务网络推广平台,网站设计的价格,做网站首次备案需要哪些资料思路: 错解:对于这道题而言,有的同学会选择用计算每次碰撞的坐标,直到坐标等于原点的方法来做,但这种方法实现起来比较繁琐,并且由于碰撞点的坐标有可能是浮点数,而浮点数会丢失精度&#xff0…

思路:

  • 错解:对于这道题而言,有的同学会选择用计算每次碰撞的坐标,直到坐标等于原点的方法来做,但这种方法实现起来比较繁琐,并且由于碰撞点的坐标有可能是浮点数,而浮点数会丢失精度,如果碰撞次数非常多,那么精度损失会无法承受
  • 正解:以宏观的角度观察题目,看看有什么特点。下面分享两种方法。

方法一:运动分解求解(最大公约数)

详细请看我之前的博客。点击链接

方法二:镜像求解(最小公倍数)

原理:

对于一次长边的碰撞,可以看成沿长边翻转后,继续向镜像中前进,如下图

同理,对于一次短边的碰撞,也可以看成沿短边翻转后,继续向镜像中前进,如下图

思路:

有了上面的原理,我们可以推出:当小球一直沿着镜像中“直线”出发,第一次到达某个镜像原点的时候,就是正解的情况。

我们继续观察镜像原点坐标的规律,如下图红点

我们可以发现对于每个镜像原点的坐标,满足以下条件:

(x,y)∈ {x是2X的倍数,y是2Y的倍数} 

其中X是题目长方形的长,Y是长方形的宽

有了上面的发现后,我们只需要找到同时符合x,y方向上分运动的路程分别满足以上条件的时间t即可,找到了时间 t,我们就可以用以下公式来求解答案

S = t * V(和) 

其中:

  • t为小球返回原点所需总时间
  • V(和) 为合速度
  • S 为题目要求的总路程

需要注意的是,题目给的分速度是比的形式,但我们仍然可以看作dx是15,dy是17

暴力算法实现步骤

  1. 遍历单位时间 t
  2. 找到同时符合x,y方向坐标的的t
  3. 输出结果保留2位小数

注意事项:

t可以为单位时间的原因(整数)是,互质的两个数只有乘以一个整数,结果才能都是整数,dx和dy互质,而镜像原点xy坐标都为整数,也就是说到达原点的情况下时间t一定是整数,固可用整数遍历t。   

暴力代码

#include<bits/stdc++.h>
using namespace std;
int main() {int X=343720,Y=233333,dx = 15,dy =17;int t=1;for(t=1;;++t){if((dx*t) % (2*X) == 0 && (dy*t) % (2*Y) == 0){break;}}double ans = t * sqrt(15*15+17*17);printf("%.2lf", ans);return 0;
}

输出结果

1100325199.77

算法优化

对于某一分量如x方向,位移必须是2X的整数倍,则第一次碰撞在最小公倍数lcm(dx,2X)上(dx为x的速率,X为宽),第二次在2*lcm(dx,2X)上,以此类推,则时间步长可以设置为lcm(dx,2X)/dx,即路程除以速度,后面遍历按照x或y方向步长增倍即可。

优化后的代码

#include<bits/stdc++.h>
using namespace std;
int gcd(int x,int y)
{int tem = x%y;while(x%y){x=y;y=tem;tem = x%y;}return y;
}
int lcm(int x,int y)
{return x*y/gcd(x,y);
}
int main() {int X=343720,Y=233333,dx = 15,dy =17;int tem=lcm(dx,2*X)/dx;int t=1;for(t=tem; ;t += tem){if((dx*t) % (2*X) == 0 && (dy*t) % (2*Y) == 0){break;}}double ans = t * sqrt(15*15+17*17);printf("%.2lf", ans);return 0;
}

总结

通过上述方法,我们了解了小球反弹的另一种解题思路:镜像思路,我们可以准确计算出小球运动的总路程,并保留两位小数作为最终答案。这种方法避免了浮点数精度损失的问题,同时简化了计算过程,提高了效率。

http://www.cadmedia.cn/news/218.html

相关文章:

  • 企业宣传片制作公司排名/优化网站制作方法大全
  • 电子商城网站制作公司/推广之家app下载
  • wordpress需要多少运存/石家庄网站建设seo公司
  • 局域网站建设银行信用卡/宁波百度关键词推广
  • 广州网站建设团队/seo在线教学
  • 继续坚持网站建设监管/app有哪些推广方式
  • 直播视频采集卡/苏州百度快速排名优化
  • 软件网站开发培训/百度提问登陆入口
  • 做网站每年需要多少维护费/网络营销策划书步骤
  • wordpress设置新用户默认角色/网站优化怎么做
  • 个人备案网站可以做电影站吗/磁力搜索引擎下载
  • 网络工作室照片/安卓优化大师破解版
  • wordpress中的搜索/无锡优化网站排名
  • 换公司网站域名要改吗/搜索引擎提交入口大全
  • 江苏网站推广公司哪家好/fifa最新排名出炉
  • 轻松网站建设/培训机构排名全国十大教育机构排名
  • 17一起做网店网站潮汕/网络推广方法怎么样
  • 济南网站建设webwz8/神马网站快速排名软件
  • 做黑网站/推广seo是什么意思
  • 有没有做的很炫的科技型网站/ciliba磁力猫
  • 企业网站收录/色目人
  • msmq服务器可以做网站吗/网站推广优化招聘
  • 淘宝客网站可以做百度推广/搜索关键词排名工具
  • 光明乳业网站建设情况分析/怎么在腾讯地图上添加自己的店铺
  • 郑州威客网站建设/百度官网电话客服24小时
  • xiu主题做的网站/游戏推广员骗局
  • 网站制作 广州/百度推广入口
  • 乐山乐人网站建设公司/国内最开放的浏览器
  • web5.0安装WordPress/seo网络推广培训
  • 深圳双语网站制作/如何进行网站的推广