洛谷 P1599 結算日

2022-04-07 04:30:25 字數 1254 閱讀 7147

借債還債

「不放債不借債」,貝西多麼希望自己可以遵循這個忠告。她已經和她的n(1 <= n <= 100,000)個朋友有了債務關係,或者借債了,或者放債了。她的n個朋友依次標號為1..n。 結算日終於來臨了。她知道,朋友欠她的錢比她欠朋友的錢多。她的朋友們分布在一條直線上,第i頭奶牛站的位置距離穀倉i公尺。貝西打算沿著這條直線行走,從欠她錢的奶牛手裡收錢回來,並且還錢給她欠錢的奶牛。 當她沿直線移動的時候,她可以要求任何欠她錢的奶牛還全部的錢。當她有足夠的錢可以還清她的某個債,就可以把錢給對應的奶牛還清她的債。奶牛i欠貝西d_i元(-1,000 <= d_i <=1,000; d_i <> 0),負數表示貝西欠奶牛i錢。 貝西從穀倉出發,位置為0,初始貝西沒有錢。貝西收回她的所有借債,並且還清她的欠債所需行走的最短距離是多少?注意:她必須在最後一頭奶牛所在的位置,完成她的行走。

輸入格式:

行1:乙個整數:n 行2..n+1:第i+1行包含乙個整數:di

輸出格式:

行1:乙個整數,貝西收回借債並且還清欠債,所需要行走的最短距離(單位為公尺)

輸入樣例#1: 複製

5

100-200

250-200

200

輸出樣例#1: 複製

9

輸入解釋:

3頭奶牛欠貝西錢;她欠2頭奶牛錢。當她完成結算,她將有150元。

輸出解釋:

穀倉  100  -200  250 -200  200

| | | | | |

***>**+**>*****>**+

* < 貝西有 350元

-**<***

* < 貝西有 150元

***>****>****>**+

* < 貝西有 350

-**<***

*

***>*** < 貝西結束她的行走,有 150元

思路:模擬

#includeusing

namespace

std;

intn,x,sum,ans,l;

bool

flag;

intmain()

if((sum<0)&&!flag)

}cout

<}

洛谷 P1599 結算日

洛谷 p1599 結算日 不放債不借債 貝西多麼希望自己可以遵循這個忠告。她已經和她的n 1 n 100,000 個朋友有了債務關係,或者借債了,或者放債了。她的n個朋友依次標號為1.n。結算日終於來臨了。她知道,朋友欠她的錢比她欠朋友的錢多。她的朋友們分布在一條直線上,第i頭奶牛站的位置距離穀倉i...

洛谷P1802 5倍經驗日

現在樂鬥有活動了!每打乙個人可以獲得5倍經驗!absi2011卻無奈的看著那一些比他等級高的好友,想著能否把他們乾掉。乾掉能拿不少經驗的。現在absi2011拿出了x個迷你裝藥物 嗑藥打人可恥 準備開始與那些人打了 由於迷你裝乙個只能管一次,所以absi2011要謹慎的使用這些藥,悲劇的是,沒到達最...

洛谷 P1104 生日

cjf君想調查學校oi組每個同學的生日,並按照從大到小的順序排序。但cjf君最近作業很多,沒有時間,所以請你幫她排序。有22行,第11行為oi組總人數nn 第22行至第n 1n 1行分別是每人的姓名ss 出生年yy 月mm 日dd。有nn行,即nn個生日從大到小同學的姓名。如果有兩個同學生日相同,輸...