演算法問題 在同時有路段和時間限速的情況下,如何計算最短時間

時間 2021-05-30 07:41:57

1樓:李寧遠

顯然加速減速時一定要用最大加速度。考慮在時間t位置x的時候,之後的路段對速度的約束是 t}\,min_\\}" eeimg="1"/>。直接從t=0,x=0開始模擬,任意時刻只要沒有達到速度約束就貪心以a1加速,達到約束時就保持速度或者以a2減速,這樣的話每次只要考慮 t}\" eeimg="1"/>和 x}\" eeimg="1"/>,只要O(1)求曲線交點然後變成新的(t,x),應該是對l和w排序之後O(n+m)時間的。

第一句顯然的感性理解:假設f0(t)是貪心加速方案下t時刻達到的距離,f1(t)是任意一種方案t時刻達到的距離,那麼任意時刻f0(t)一定不會在f1(t)下方。

2樓:

剛下班,洗個澡再來答.

F(S,v,a1,a2,[li-n],[ri-n],[si-m],[ui-n],[ei-m],[wi-m])= T

這個引數也太多了吧,不管引數為多少還都能求到最佳解,還得在加點限制條件

一共有n^3*m^3個引數

每種都有唯一解,所以一共有n^3*m^3種解。

#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time :

2019/11/1 1:13# @Author : Erquren

# @SiteFile : 最短時間.py# @Software: PyCharm

import random

"""輸入:

SvMax

a1a2

n > n n > N

m > m m > M

"""S = random.random()Sc = S

vMax = random.random()a1 = random.random()

a2 = random.random()

N =M =

if S > 0:

tempS = random.random() # xi-1點if tempS < StempZ = tempS + random.random() # xi-2點

elseprint('over'N = N# 未完待續

同時有linux macOS windows三颱電腦是什麼體驗?

觀察者 沒什麼體驗,win玩遊戲,linux做工作,mac常年吃灰,前段時間二手賣了。機器多了其實挺麻煩的,資料同步,操作習慣都是巨大成本。 龍翔翎 乙個字,亂。主要是操作方式與輸入法 在linux上,我會用滑鼠碰左上角顯示概覽再切換應用。而win就沒有,所以常常下意識去碰一下,結果沒反應才意識到用...

同時有假胯寬骨盆前傾膝超伸等體態問題 該以什麼順序解決鍛鍊

龍小曉 可以把人體比喻成積木上,上面出現搖晃等問題,和下面的積木是有一定的關係,俗話說 下樑不正,上梁歪 人體結構也是這樣的,出現骨盆前傾等等問題,先要從腳底開始練習起,看足弓是不是有扁平足或者高弓足的情況,先把腳底調整好之後,上半身加上一些訓練自然而然就會調整過來。 胡說體育 先測下股骨前傾角,如...

這種永動機模型問題在哪?

真能磁動力 看看我的磁鐵模型,這裡正常磁鐵有三個作用力點,分別是左中右。而非正常的磁鐵只有中間有作用力左右沒有。這是新的發現喔,不是魔術。 ThRong 不太懂,但還是發表一下觀點,見笑了。題主的永動機要求乙個並非隨意的密度差,才能保持平衡,而一旦有阻力就會破壞平衡,會很快趨於靜止,跟其他永動機沒什...