一本通 1 1 練習 2 數列分段

2022-06-01 10:48:08 字數 505 閱讀 2503

題目link

首先對於乙個序列,從$a[1$ ~ $l]$都符合最佳序列,假設對於第$l$ $+$ $1$個數,它放到從$l$ $+$ $1$ ~ $r$的區間是一種最優的方法,並且它也可以放在從$1$ ~ $l$ $+$ $1$這裡,那麼根據貪心,它放到$1$ ~ $l$ $+$ $1$的序列中是合法的,而且也是一種最優方案。

因此,這道題只需要貪心:能將當前數往左放就往左放。

1 #include 2

#define inf 0x3f3f3f3f

3using

namespace

std;

4int n, m, a[100010

], ans, cnt;

5int

main()

613 printf("

%d", ans + 1);//

這個是加上最後乙個區間

14return0;

15 }

貪心 一本通 1 1 練習 2 數列分段

雖然題目標註的是貪心,但是,我覺得,用動態規劃可能會更簡單一點。令dp i 代表從1開始到第i個結束最少要分成的段數。n 5,m 6。a陣列下標 dp陣列41 1221 4325 4315 3ans dp n 3 如果sum a i m,則dp i sp i 1 sum a i 否則,dp i dp...

一本通 1 1 練習 1 數列極差

題目傳送門 這題也是典型的貪心演算法題。對於這個問題 先通過例項來認識問題所描述的計算過程。令 n 3 取數列 3,5,7 可能有下面三種情況 3 5 1 7 1 113 3 7 1 5 1 111 5 7 1 3 1 109 由此可見先運算小資料的到的是最大值,先運算大資料得到的是最小值。故針對此...

C 一本通 1 1 練習 1 數列極差

一本通題庫 1427 libreoj 10005 vjudge 注意 一本通題庫和libreoj題意相同,但輸入格式不同。以一本通題庫為準。在黑板上寫了n nn個正整數作成的乙個數列,進行如下操作 每一次擦去其中的兩個數a aa和b bb,然後在數列中加入乙個數a b 1 a b 1 a b 1,如...