아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

하프와 뒷면

면접 대비

시간 제한2초메모리 제한512 MB

요약
H와 T로 이루어진 격자에서 임의의 열을 뒤집을 수 있을 때, 모든 칸이 H가 되는 행의 최대 개수를 구한다.
난이도

보통10점 중 4점

유형
해시맵, 그리디, 비트 연산, 구현
정답자
아직 제출이 없습니다

문제

게리는 1유로 동전에 새겨진 켈틱 하프를 좋아한다. 게리에게는 이런 동전을 nn행 mm열로 늘어놓은 격자가 있고, 각 동전은 하프 면이 위를 향하거나 뒷면이 위를 향한다.

게리는 모든 칸이 하프인 행을 최대한 많이 만들고 싶다. 대신 쓸 수 있는 연산은 하나뿐이다. 열을 하나 골라 그 열의 동전을 모두 뒤집는다. 뒤집으면 하프가 보이던 동전은 뒷면이 되고, 뒷면이 보이던 동전은 하프가 된다.

이 연산은 원하는 만큼 여러 번 할 수 있다. 연산을 모두 마쳤을 때 모든 칸이 하프인 행이 최대 몇 개가 되는지 구하여라.

입력

첫째 줄에 격자의 행 수 nn과 열 수 mm이 공백을 사이에 두고 주어진다 (1≤n,m≤10001 \le n, m \le 1000).

다음 nn개의 줄에 격자의 상태가 주어진다. ii번째 줄은 길이가 mm인 문자열이고, 이 줄의 jj번째 문자는 ii행 jj열의 동전이 뒷면이면 'T', 하프면 'H'이다.

출력

모든 칸이 하프인 행의 최대 개수를 한 줄에 출력한다.

예제3

  1. 예제 1

    입력
    4 4
    THTH
    HTTT
    HHHH
    THTH
    
    예상 출력
    2
    
  2. 예제 2

    입력
    3 5
    TTTTT
    TTTTT
    TTTTT
    
    예상 출력
    3
    
  3. 예제 3

    입력
    10 11
    THHHTHTTHHH
    THHHTHTTHHH
    HTHTTHTTTHH
    THHHTHTTHHH
    TTTTHHTTTTH
    THHHTHTTHHH
    THHHTHTTHHH
    TTTTHHTTTTH
    HTHTTHTTTHH
    THHHTHTTHHH
    
    예상 출력
    6