#include #include using namespace std; uint16_t get_group(int val) { uint16_t res = 0; for (;val; val/=10) res|= ( 1 << ((val%10) - 1)); return res; } int main() { for (;;) { int n; cin >> n; if (cin.eof()) break; unordered_set groups; for (int i = 0; i < n; i++) { int val; cin >> val; groups.insert(get_group(val)); } cout << groups.size() << '\n'; } return 0; }