演算法二十三 奶牛吃草

2021-08-21 04:41:47 字數 584 閱讀 2319

有乙隻奶牛在一條筆直的道路上(可以看做是乙個數軸)。初始,它在道路上座標為 k 的地方。

這條道路上有 n 棵非常新鮮的青草(編號從 1 開始)。其中第 i 棵青草位於道路上座標為 x[i] 的地方。貝西每秒鐘可以沿著道路的方向向前(座標加)或向後(座標減)移動乙個座標單位的距離。

它只要移動到青草所在的地方,就可以一口吞掉青草,它的食速很快,吃草的時間可以不計。

它要吃光所有的青草。不過,青草太新鮮了,在被吞掉之前,暴露在道路上的每棵青草每秒種都會損失一單位的口感。

請你幫它計算,該怎樣來回跑動,才能在口感損失之和最小的情況下吃掉所有的青草。

第一行兩個用空格隔開的整數 n,k,分別表示青草的數目和奶牛的初始座標。

第 2 行到第 n+1 行,第 i+1 行有乙個整數 x[i],描述第 i 棵青草的座標。

一行乙個整數,表示吃掉所有青草的前提下,最小損失的口感之和。保證答案在 32 位有符號整數的範圍內。

4 1019

1119

44
先跑到 9,然後跑到 11,再跑到 19,最後到 1,可以讓損失的口感總和為 29+1

演算法(二十三)

1 給定乙個整數陣列nums,找到乙個具有最大和的連續子陣列 子陣列最少包含乙個元素 返回其最大和。public int maxsubarray int nums return maxsum 複雜度分析 public int maxsubarray int nums return maxsum 2 ...

隨筆 二十三

1.gradle 完a整指南 android 2.android gradle 外掛程式 3.0 挖坑日記 3.android效能優化全方面解析 4.android studio 3.2新功能特性 5.重新認識 androidstudio 和 gradle,這些都是你應該知道的 6。美團外賣andr...

二十三 管道

在go語言中可以通過chan來定義管道,可以通過操作符 和 對管道進行讀取和寫入操作 通過管道維護例程狀態 使用make函式初始化,make chan type make chan type,len 不帶len引數的用於建立無快取區的管道,使用len建立指定緩衝區長度的管道 讀寫管道 可通過操作符 ...