#include <bits/stdc++.h> #define int long long using namespace std; const int N = 1e5 + 7; int t,n; int a[N]; /* 1.观察到式子就是求区间的最大值减最小值的和,我们分别求最大值和求最小值 2.如果直接暴力求每个区间的最值,显然会超时 3.于是我们进行思维的转换:以a[i]为最大值,可控制的最长区间, 然后算这个最长区间有几个子区间,而每个子区间都能带来a[i]的贡献 4.即去找a[i]左边第一个大于它的数的位置和a[i]右边第一个大于它的数的位置 5.使用l[i]和r[i...