P3817 小A的糖果

2021-09-07 12:41:26 字數 1223 閱讀 1300

小a有n個糖果盒,第i個盒中有a[i]顆糖果。

小a每次可以從其中一盒糖果中吃掉一顆,他想知道,要讓任意兩個相鄰的盒子中加起來都只有x顆或以下的糖果,至少得吃掉幾顆糖。

輸入格式:

第一行輸入n和x。

第二行n個整數,為a[i]。

輸出格式:

至少要吃掉的糖果數量。

輸入樣例#1:

3 3

2 2 2

輸出樣例#1:

1

輸入樣例#2:

6 1

1 6 1 2 0 4

輸出樣例#2:

11

輸入樣例#3:

5 9

3 1 4 1 5

輸出樣例#3:

0

樣例解釋1

吃掉第二盒中的糖果。

樣例解釋2

第二盒吃掉6顆,第四盒吃掉2顆,第六盒吃掉3顆。

30%的測試資料,2<=n<=20,0<=a[i], x<=100

70%的測試資料,2<=n<=1000,0<=a[i], x<=10^5

100%的測試資料,2<=n<=10^5,0<=a[i], x<=10^9

mmp

一開始p=p-a[i+1];

a[i+1]=0;

寫反了,所以每次p都相當於不減,,

1 #include2 #include3 #include4 #include5 #include6 #include7

#define lli long long int

8using

namespace

std;

9void read(lli &n)

1014

while(c>='

0'&&c<='9'

)15

16 flag==1?n=-x:n=x;17}

18 lli a[100001

];19

lli n,m;

20 lli ans=0;21

intmain()

2236

else

3744}45

}46 printf("

%lld

",ans);

47return0;

48 }

P3817 小A的糖果

luogu 傳送門 挺好想的貪心 蒟蒻一下就想到啦 我們從前往後處理時,盡量吃後面的糖,因為後面的糖會對後面產生影響,而前面的就不會影響了。不過要開long long 為此我wa了兩個點。include include include include include define ll long l...

P3817 小A的糖果

小a有n個糖果盒,第i個盒中有a i 顆糖果。小a每次可以從其中一盒糖果中吃掉一顆,他想知道,要讓任意兩個相鄰的盒子中加起來都只有x顆或以下的糖果,至少得吃掉幾顆糖。輸入格式 第一行輸入n和x。第二行n個整數,為a i 輸出格式 至少要吃掉的糖果數量。輸入樣例 1 複製 3 3 2 2 2 輸出樣例...

P3817 小A的糖果

小a有n個糖果盒,第i個盒中有a i 顆糖果。小a每次可以從其中一盒糖果中吃掉一顆,他想知道,要讓任意兩個相鄰的盒子中加起來都只有x顆或以下的糖果,至少得吃掉幾顆糖。輸入格式 第一行輸入n和x。第二行n個整數,為a i 輸出格式 至少要吃掉的糖果數量。輸入樣例 1 3 3 2 2 2 輸出樣例 1 ...