## https://yukicoder.me/problems/no/2178 MOD = 998244353 def main(): N, K = map(int, input().split()) S = [] for _ in range(N): S.append(input()) total = 5 ** K dp = [0] * total maps = {} for s__ in S: a = 0 for j in range(K): a *= 5 a += int(s__[j]) dp[a] += 1 if a not in maps: maps[a] = 0 maps[a] += 1 for j in range(K): mask = 5 ** (j + 1) mask2 = 5 ** j for bit in reversed(range(total)): bit_ = bit % mask bit_ = bit_ // mask2 if bit_ > 0: new_bit = bit - mask2 dp[new_bit] += dp[bit] keep = 0 for a, v in maps.items(): v0 = dp[a] if v0 == v: keep += 1 print(N - keep) if __name__ == "__main__": main()