#include #include using namespace std; int main() { int N; cin >> N; int* A = new int[N + 1]; int* pos = new int[N]; for (int i = 1; i <= N; i++) { cin >> A[i]; pos[A[i]] = i; } long long ans = 0; int min_pos = pos[0]; int max_pos = pos[0]; for (int k = 1; k <= N; k++) { long long S = (long long)min_pos * (N - max_pos + 1); ans += S; if (k < N) { min_pos = min(min_pos, pos[k]); max_pos = max(max_pos, pos[k]); } } cout << ans << endl; delete[] A; delete[] pos; return 0; }