#include <bits/stdc++.h>
using namespace std;
const int N = 70000 + 100;
int tr[N * 45][12];
string s[N];
int cnt[N * 45];
int t;
int n;
int idx;
void insert(string s) {
  int p = 0;
  for (int i = 0; i < s.size(); i++) {
    int u = s[i] - '0';
    if (!tr[p][u]) tr[p][u] = ++idx;
    p = tr[p][u];
  }
  cnt[p]++;
}
void del(string s) {
  int pos = 0;
  for (int i = 0; i < s.size(); i++) pos = tr[pos][s[i] - '0'];
  cnt[pos]--;
}
bool search(string s) {
  int p = 0;
  for (int i = 0; i < s.size(); i++) {
    int u = s[i] - '0';
    p = tr[p][u];
  }
  return !cnt[p];
}
string solve(int pos) {
  for (int len = 1; len <= 9; len++)
    for (int i = 0; i + len <= 9; i++) del(s[pos].substr(i, len));
  for (int len = 1; len <= 9; len++)
    for (int i = 0; i + len <= 9; i++)
      if (search(s[pos].substr(i, len))) {
        for (int len = 1; len <= 9; len++)
          for (int i = 0; i + len <= 9; i++) insert(s[pos].substr(i, len));
        return s[pos].substr(i, len);
      }
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n;
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> s[i];
    for (int len = 1; len <= 9; len++)
      for (int j = 0; j + len <= 9; j++) insert(s[i].substr(j, len));
  }
  for (int i = 1; i <= n; i++) cout << solve(i) << endl;
  return 0;
}
