#include<iostream>
#include<algorithm>
#include<cmath>
#include<map>
#include<vector>
#include<set>
//#include<bits/stdc++.h>
using namespace std;
int main()
{
std::ios_base::sync_with_stdio(NULL);
cin.tie(NULL);
cout.tie(NULL);
int t;
cin >> t;
while (t--)
{
long long n;
cin >> n;
vector<long long > mn(n), mx(n),mp(n);
int x;
for (int i = 1; i <= n; i++)
{
cin >> x;
mn[x] = i;
mx[x] = i;
mp[x] = i;
}
for (int i = 1; i < n; i++)
{
mx[i] = max(mx[i], mx[i - 1]);
mn[i] = min(mn[i], mn[i - 1]);
}
long long ans = 0;
ans += n;
for (long long i = 1; i < n; i++)
{
if (mp[i] >= mn[i-1] && mp[i] <= mx[i-1])
continue;
ans += ((mn[i - 1] * (n - mx[i - 1] + 1)) - (min(mn[i - 1], mp[i]) * (n - max(mx[i - 1], mp[i]) + 1))) * i;
}
cout << ans << "\n";
}
}
Copy