TYVJ 1359 收入計畫(二分)

2022-05-12 02:13:15 字數 1858 閱讀 6763

一開始是一眼看出是二分的,因為這裡有單調性,因為取錢是一次取完並且是連續的。

所以最優取法就是準備達到某個價值再取。最優裡邊包含了次優,也就是取不到m次我就能取完就一定能夠取m次能夠取完,只要在取法那裡隨便取就行了,保證不超過這個某個價值

於是我們可以二分這個價值,看看能不能最優法取完並且次數小於m。

#include #include #include #include #include #include using namespace std;

#define rep(i, n) for(int i=0; i<(n); ++i)

#define for1(i,a,n) for(int i=(a);i<=(n);++i)

#define for2(i,a,n) for(int i=(a);i<(n);++i)

#define for3(i,a,n) for(int i=(a);i>=(n);--i)

#define for4(i,a,n) for(int i=(a);i>(n);--i)

#define cc(i,a) memset(i,a,sizeof(i))

#define read(a) a=getint()

#define print(a) printf("%d", a)

#define dbg(x) cout << #x << " = " << x << endl

#define printarr(a, n, m) rep(aaa, n)

inline const int getint()

inline const int max(const int &a, const int &b)

inline const int min(const int &a, const int &b)

return 1;

}int main()

int l=mx, r=sum, mid;

while(l<=r)

print(r+1);

return 0;

}

因為範圍很大,所以我們二分的範圍要適當做點技巧。

描述 description

高考結束後,同學們大都找到了乙份臨時工作,渴望掙得一些零用錢。從今天起,matrix67將連續工作n天(1<=n& lt;=100 000)。每一天末他可以領取當天及前面若干天裡沒有領取的工資,但他總共只有m(1<=m<=n)次領取工資的機會。 matrix67已經知道了在接下來的這n天裡每一天他可以賺多少錢。為了避免自己濫用零花錢,他希望知道如何安排領取工資的時間才能使得領到工資最多的 那一次工資數額最小。注意matrix67必須恰好領工資m次,且需要將所有的工資全部領走(即最後一天末需要領一次工資)。

輸入格式 inputformat

第一行輸入兩個用空格隔開的正整數n和m

以下n行每行乙個不超過10000正整數,依次表示每一天的薪水。

輸出格式 outputformat

輸出領取到的工資的最大值最小是多少。

樣例輸入 sampleinput [複製資料]

7 5

100400

300100

500101

400

樣例輸出 sampleoutput [複製資料]

500

資料範圍和注釋 hint

【樣例說明】

採取下面的方案可以使每次領到的工資不會多於500。這個答案不能再少了。

100 400   300 100   500   101   400   每一天的薪水

<------1 <-------2 <---3 <---4 <---5  領取工資的時間

500       400     500   101   400   領取到的工資

二分答案 收入計畫

問題描述 高考結束後,同學們大都找到了乙份臨時工作,渴望掙得一些零用錢。從今天起,matrix67將連續工作n天。每一天末他可以領取當天及前面若干天裡沒有領取的工資,但他總共只有m次領取工資的機會。matrix67已經知道了在接下來的這n天裡每一天他可以賺多少錢。為了避免自己濫用零花錢,他希望知道如...

hive計畫(二)分割槽

使用hive e 可以執行多條語句 hive e sentence1 sentence2 進入hive 後檢視當前路徑 pwd hive 介面使用命令檢視hdfs路徑 dfs ls 使用desc可以檢視表的資訊 desc 檢視分割槽表的分割槽資訊 show partitions一般分割槽資訊不存在於...

Tyvj1655 遊樂園 二分查詢

題意 有n 1e10 個人,每個人會坐當前空閒的,編號最小的飛機 1000 對於第i個飛機,任意人的乘坐時間為si。n的數量很驚人,不能模擬,所以第一次我考慮從m下手,又怎麼做呢?dp 貪心 似乎無從下手。正解 可以發現坐飛機的時間是有規律的,那麼這就意味著如果確定了時間,可以在o m 的時間內求出...