만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

문자 풍선

면접 대비

시간 제한1초메모리 제한2048 MB

요약
문제 수 p와 학교 이니셜 t개가 주어질 때, 이니셜의 문제를 겹치지 않게 처음 풀 수 있는 학교의 최대 수를 구합니다.
난이도

보통10점 중 4점

유형
비트 연산, 완전 탐색
정답자
아직 제출이 없습니다

문제

대회를 운영하고 있으며, 각 문제를 가장 먼저 푼 팀에게 그 문제의 알파벳 모양 풍선을 주기로 했다. 예를 들어 대회에 A부터 W까지 23개 문제가 있다고 하자. 와싸 모타 대학교 팀은 M, U, W 문제를 가장 먼저 풀어서 프로그래밍 스테이션 위에 학교 이니셜을 띄우고 싶어 한다. 같은 생각을 하는 팀이 많아서, 대부분 자기 학교 약자를 이루는 문제를 가장 먼저 풀려고 한다. 와싸 모타 U.와 스핏티니어 대학교는 둘 다 이 목표를 달성할 수 있다. 하지만 머딘이어 대학교가 M과 I 문제를 먼저 풀면 둘 다 달성하지 못한다. 와싸 모타 U.나 스핏티니어 I.가 M이나 I를 먼저 풀면 머딘이어 I.는 달성할 수 없다. 톳 택 공과대학처럼 한 문제에는 풍선을 최대 한 개만 받을 수 있으므로 어떤 경우에도 달성할 수 없는 학교도 있다. 이 대회에는 X 문제가 없으므로 제르크세스 대학도 달성할 수 없다. (어떤 문제든 첫 풀이가 동점이 되는 경우는 없다고 가정한다.) 대회가 끝났을 때 첫 풀이 풍선으로 학교 이니셜을 띄울 수 있는 팀의 최대 수는 몇 개인가?

입력

첫 줄에 두 정수 pp와 tt가 주어진다. pp (1≤p≤261 \leq p \leq 26)는 문제 수이고, tt (1≤t≤201 \leq t \leq 20)는 팀 수이다. 문제는 알파벳 처음 pp개 글자로 표시된다. 이어지는 tt개 줄에는 학교 이니셜을 나타내는 빈 문자열이 아닌 문자열이 한 줄에 하나씩 주어진다. 문자열은 길이가 최대 80이며 대문자로만 이루어져 있다. 학교마다 팀은 하나뿐이지만, 같은 이니셜을 가진 학교가 여러 개 있을 수 있다.

출력

학교 이니셜을 이루는 모든 문제에서 첫 풀이를 차지할 수 있는 팀의 최대 수를 정수 하나로 출력한다.

예제2

  1. 예제 1

    입력
    23 5
    WMU
    SI
    MI
    TTT
    XT
    
    예상 출력
    2
    
  2. 예제 2

    입력
    6 6
    ABC
    BDE
    ABE
    BF
    BF
    CEF
    
    예상 출력
    1