#define _USE_MATH_DEFINES

#include <iostream>		//cin, cout
#include <vector>		//vector
#include <algorithm>	//sort,min,max,count
#include <string>		//string,getline, to_string
#include <cstdlib>		//abs(int)
#include <utility>		//swap, pair
#include <deque>		//deque
#include <climits>		//INT_MAX
#include <bitset>		//bitset
#include <cmath>		//sqrt, ceil. M_PI, pow, sin
#include <ios>			//fixed
#include <iomanip>		//setprecision
#include <sstream>		//stringstream
#include <numeric>		//gcd, assumlate
#include <random>		//randam_device
#include <limits>		//numeric_limits
#include <time.h>       //tm

using namespace std;
constexpr int64_t D_MOD = 1000000007;
constexpr int64_t F_MOD = 998244353;


int main() {

    int N;
    cin >> N;

    vector<string> S(N);
    for (int i = 0; i < N; i++) {
        cin >> S.at(i);
    }

    vector<string> A;
    for (int i = 0; i < N - 1; i++) {
        for (int j = i + 1; j < N; j++) {
            A.push_back(S.at(i) + S.at(j));
            A.push_back(S.at(j) + S.at(i));
        }
    }

    sort(A.begin(), A.end());
    A.erase(unique(A.begin(), A.end()), A.end());

    cout << A.size() << endl;

    return 0;

}