序列区间增减
时间限制:1秒 内存限制:256M
【题目描述】
给定整数序列 \(a[1],a[2],…,a[n](|a[i]|≤10^9)\),你每一次操作可以把下标在区间 \([l,r]\) 中的每个元素 \(+1\) 或 \(-1\),那么至少要多少次操作才能使序列所有元素都一样?
【输入格式】
第一行一个正整数 \(n\)。
第二行有 \(n\) 个整数,表示 \(a[1],a[2],…,a[n]\)。
【输出格式】
第一行输出最少操作次数。
【输入输出样例】
Input
6
7 3 8 5 3 4
Output
9
【样例解释】
原序列为:7 3 8 5 3 4,经过下面9次操作,可以把序列变成 7 7 7 7 7 7。
把下表区间[2,2]的元素增加 1:序列变成 7 4 8 5 3 4;
把下表区间[2,2]的元素增加 1:序列变成 7 5 8 5 3 4;
把下表区间[2,2]的元素增加 1:序列变成 7 6 8 5 3 4;
把下表区间[2,2]的元素增加 1:序列变成 7 7 8 5 3 4;
把下表区间[3,3]的元素减少 1:序列变成 7 7 7 5 3 4;
把下表区间[4,6]的元素增加 1:序列变成 7 7 7 6 4 5;
把下表区间[4,6]的元素增加 1:序列变成 7 7 7 7 5 6;
把下表区间[5,6]的元素增加 1:序列变成 7 7 7 7 6 7;
把下表区间[5,5]的元素增加 1:序列变成 7 7 7 7 7 7;
【数据范围】
对于所有测试数据有:\(1≤n≤10^5\)。
【来源】
Mr.he