#include #include using namespace std; using namespace atcoder; typedef long double ld; typedef long long ll; typedef vector> Graph; const ld pi = acos(-1.0); const ld tau = 2*pi; const ll MOD = 998244353; using mint = modint998244353; const string ABC = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; const string abc = "abcdefghijklmnopqrstuvwxyz"; const int dx[8] = {0, -1, 1, 0, -1, 1, -1, 1}; const int dy[8] = {-1, 0, 0, 1, -1, -1, 1, 1}; struct{ constexpr operator int(){return int(1e9)+1;} constexpr operator ll(){return ll(1e18)+1;} constexpr auto operator-(){ struct{ constexpr operator int(){return -int(1e9)-1;} constexpr operator ll(){return -ll(1e18)-1;} }_ret; return _ret; } }inf; istream &operator>>(istream &is, modint998244353 &a) { long long v; is >> v; a = v; return is; } ostream &operator<<(ostream &os, const modint998244353 &a) { return os << a.val(); } istream &operator>>(istream &is, modint1000000007 &a) { long long v; is >> v; a = v; return is; } ostream &operator<<(ostream &os, const modint1000000007 &a) { return os << a.val(); } template istream &operator>>(istream &is, static_modint &a) { long long v; is >> v; a = v; return is; } template istream &operator>>(istream &is, dynamic_modint &a) { long long v; is >> v; a = v; return is; } template ostream &operator<<(ostream &os, const static_modint &a) { return os << a.val(); } template ostream &operator<<(ostream &os, const dynamic_modint &a) { return os << a.val(); } template istream &operator>>(istream &is, vector &v) { for (auto &e : v) is >> e; return is; } template ostream &operator<<(ostream &os, const vector &v) { for (auto &e : v) os << e << ' '; return os; } #define Rep(parameter, start, end) for(int parameter = start; parameter < (int)(end); parameter++) #define rep(parameter, end) Rep(parameter, 0, end) template inline bool chmax(T &a,T& b){if(a < b){a = b; return true;} else return false;} template inline bool chmin(T &a,T& b){if(a > b){a = b; return true;} else return false;} template // 全部出力する O(|Vec|) void declare(T Vec){ for(auto x : Vec) cout << x << endl; return; } int main() { int N; cin >> N; vector S(N); rep(i, N) cin >> S[i]; set st; for (auto s : S) { for (auto t : S) { if (s == t) continue; st.insert(s+t); } } cout << st.size() << endl; } /* */