一个加速度计算问题

计算小怪移动时间

小怪需要走一段1000m长的距离, 小怪的移动速度是10m/s

在第3s, 玩家A对小怪使用buff, 小怪开始做加速度为5m/s的匀加速运动, 持续5s
在第5s, 玩家B对小怪使用buff, 小怪开始做加速度为2m/s的匀加速运动, 持续3s
在第7s, 玩家C对小怪使用buff, 小怪开始做加速度为-3m/s的匀减速运动, 持续2s

求小怪移动完1000m所需时间

注意: buff是叠加的 也就是第5秒的时候 小怪有两个加速度

大佬们 这种怎么算运动时间

这个总时间每次buff变化的时候都要计算一次吧

看似需要根据小怪移动来做计算,其实实际上,你的buff仅仅只是个移动距离而已。
3s 小怪获得了5 + 10 + 15 + 20 + 25 总共提前完成了75m 的buff
5s 小怪获得了2 + 4 + 6 总共提前完成 12m 的buff
7s 小怪获得了3 + 6 总共获得了增加 9m 的buff

实际消耗的时间就是 (1000 - 75 - 12 + 9) / 10

题目说的是匀变速, 你这是匀速运动的答案吧

嗯,没仔细审题。过程我改了,不过道理都一样。

两个加速度的时候 总要取一个吧 一个正一个负数 那个权值大?

加速度改变了速度,所有buff都消失的时候,速度肯定不再是10了,应该先算出每个时间点的速度,最后再统一算时间

是的 改变了buff必须重新计算 这里只是举个栗子

buff是可以叠加的

感觉不太对, 速度会影响移动的距离

做数学题计算出来好像是18.114325562809453,不知道有没有算对,你可以多用几个变量存加速度,用时和当前速度,应该就能算出来总的时间

用公式 s = vt + 1/2a (t * t); 现在计算无摩擦力的情况 有摩擦力 需要考虑将速度 退回 至 10m/s
第3s时, s(总) = 30m;
第5s时, s(总) = 30 + 10 * 2 + 5 * 2 * 2 / 2 = 30 + 20 + 10 = 60;
初速度 v = v + at = 10 + 5 * 2 = 20 m/s;
第7s时, s(总) = 60 + 20 * 2 + 7 * 2 * 2 / 2 = 60 + 40 + 14 = 114;
初速度 v = v + at = 20 + 7 * 2 = 34 m/s;
第8s时,s(总) = 114 + 34 * 1 + 4 * 1 * 2 = 150;
初速度,v = v + at = 34 + 4 * 1 = 41m/s;
第9s时,s(总) = 150 + 41 * 1 - 3 * 1 / 2 = 189.5;
初速度 v = v + at = 41 - 3 = 38 m/s;
810.5m / 38m/s = 21.3xxxxx s 21 + 9 = 30 s