計蒜客 難題題庫 202 貝茜的訓練
阿新 • • 發佈:2019-01-24
為了能在下一次跑步比賽中有好的發揮,貝茜在一條山路上開始了她的訓練。貝茜希望能在每次訓練中跑得儘可能遠,不過她也知道農場中的一條規定:奶牛獨自進山的時間不得超過M秒(1 < = M < = 10,000,000)。 整條山路被貝茜劃分成T個長度相同的小段(1 < = T < = 100,000),並且,貝茜用S_i表示第i個小段的路況。S_i為u,f,d這3個字母之一,它們分別表示第i個小段是上坡、平地,或是下坡。 貝茜要花U秒(1 < = U < = 100)才能跑完一段上坡路,跑完一段平地的耗時是 F秒(1 < = F < = 100),跑完一段下坡路要花D秒(1 < = D < = 100)。注意,沿山路 原路返回的時候,原本是上坡路的路段變成了下坡路,原本是下坡路的路段變成 了上坡路。 貝茜想知道,在能按時返回農場的前提下,她最多能在這條山路上跑多遠。
輸入格式: * 第1行: 5個用空格隔開的整數:M,T,U,F,以及D * 第2..T+1行: 第i+1行為1個字母S_i,描述了第i段山路的路況
輸出格式: * 第1行: 輸出1個整數,為貝茜在按時回到農場的前提下,最多能跑到多遠
輸入說明: 貝茜跑步的最大耗時為13秒(這麼短...),她跑步的山路一共被劃成5段。 貝茜跑完一段上坡路的耗時為3秒,平地為2秒,下坡路為1秒。山路各段的走向 如下圖所示: _/\_ /
輸出說明: 貝茜跑完山路的前3段,然後返回,總耗時為3 + 2 + 3 + 1 + 2 + 1 = 12秒,只比她能在外面呆的時限少1秒。如果她跑得更遠,就無法按時回到農場。