#include <bits/stdc++.h>
using namespace std;
long long pwr(long long a, long long b);
long long pwr(long long a, long long b, long long m);
int baap[200002];
int find(int i);
bool Union(int x, int y);
long long inv(long long x) { return pwr(x, 1000000007 - 2, 1000000007); }
void solve() {
  int n;
  cin >> n;
  int a[n];
  for (int i = 0; i < n; i++) cin >> a[i];
  ;
  set<int> s;
  for (int i = 0; i < n; i++) {
    s.insert(a[i]);
  }
  cout << s.size();
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int _ = 1;
  cin >> _;
  while (_--) {
    solve();
    cout << endl;
  }
}
long long pwr(long long a, long long b) {
  if (b == 0) return 1;
  long long c = pwr(a, b / 2);
  c = c * c;
  if (b % 2) return c * a;
  return c;
}
long long pwr(long long a, long long b, long long m) {
  if (b == 0) return 1;
  long long c = pwr(a, b / 2, m) % m;
  c = (c * c) % m;
  if (b % 2) return (c * a % m) % m;
  return c;
}
int find(int i) {
  if (baap[i] != i) baap[i] = find(baap[i]);
  return baap[i];
}
bool Union(int x, int y) {
  x = find(x);
  y = find(y);
  if (x == y) return false;
  baap[x] = y;
  return true;
}
