芳芳的不下降序列

来源:互联网 发布:手机音乐相册制作软件 编辑:程序博客网 时间:2024/04/29 08:29

原题:

题目描述

 

芳芳特喜欢数列,有一天,芳芳发现了这样一个问题,给一个n个数的序列,可以进行这样一次操作,对区间[L,R]上的数字集体+11<=L<=R<=n),最少操作多少次,使得整个序列变为单调不下降序列。

 3 2 1 -> 3 3 2 -> 3 3 3最少2次操作。

无所不能的芳芳觉得太简单了,你能解决吗?

输入

 

多组数据。输入一个n,接下来有n个数字。(1<=n<=10000,这些数字不会超int)

输出

 

每组输出一个数字,最小的操作数。

示例输入

31 2 333 2 147 4 1 47

示例输出

026

水题不解释~

原码:

#include<stdio.h>int main(){    int a[10005],n,sum;    while(scanf("%d",&n)!=EOF)    {        sum=0;        for(int i=0; i<n; i++)        {            scanf("%d",&a[i]);        }        for(int i=n-1; i>0; i--)        {            if(a[i]<a[i-1])            sum+=a[i-1]-a[i];        }        printf("%d\n",sum);    }    return 0;}