#include <bits/stdc++.h>   using namespace std;   unordered_set<int> S;   int main() {     int n;     cin >> n;     int A[n], dp[n + 1];     dp[0] = 0;     S.clear();     for (int _n{n}, i{0}; i < _n; ++i) {       cin >> A[i];       dp[i + 1] = dp[i];       if (!S.count(A[i])) {         S.insert(A[i]);         dp[i + 1]++;       }     }     S.clear();     uint64_t ans = 0;     for (int _n{n + 1}, i{1}; i < _n; ++i) {       if (!S.count(A[n - i])) {         ans += dp[n - i];         S.insert(A[n - i]);       }     }     cout << ans << endl;   }   