zoukankan      html  css  js  c++  java
  • luogu P3817 小A的糖果

    P3817 小A的糖果

    题目描述

    小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

    #include <cstdio>
    
    long long n,a[100010],x,ans,yy;
    
    int main() 
    {
        scanf("%lld%lld",&n,&x);
        
        for (int i=1; i<=n; i++) 
        {
            scanf("%lld",&a[i]);
            if (a[i]+a[i-1]>x)
                yy=a[i]+a[i-1]-x,
                a[i]-=yy,
                ans+=yy;
        }
        
        printf("%lld",ans);
        return 0;
    }
  • 相关阅读:
    飞机大战4-我的子弹
    飞机大战3-我的飞机
    飞机大战1-分析设计
    继承
    常见题
    42个例子算法
    心跳
    tomcat
    service
    URI URL
  • 原文地址:https://www.cnblogs.com/lyqlyq/p/7107311.html
Copyright © 2011-2022 走看看