#228
단어 찾기 암호
원문: English
시간 제한
2s
메모리 제한
1024MB
제출
0
정답
0
맞힌 사람
0
정답 비율
0.0%
문제
민영이는 알고리즘 동아리 ANA에서 단어 찾기 퍼즐을 만들었다. 이 퍼즐은 크기의 알파벳 격자에서 "MOO"라는 단어를 찾는 게임이다. "MOO"는 가로, 세로, 대각선의 가지 방향으로 나타날 수 있다.
민영이의 친구 우진이는 민영이가 퍼즐을 너무 빨리 푸는 것을 방지하기 위해 퍼즐의 내용을 "치환 암호"를 이용해 암호화했다. 치환 암호는 알파벳의 각 문자를 다른 문자로 일대일 대응시켜 바꾸는 방식이다. 이때 우진이가 사용한 암호에는 두 가지 규칙이 있다.
- 어떤 문자도 자기 자신으로 바뀌지 않는다. (예: 'A'가 'A'로 유지될 수 없다.)
- 서로 다른 두 문자가 같은 문자로 바뀌지 않는다.
우진이는 암호화에 사용한 규칙을 잊어버리고 말았다. 암호화된 퍼즐이 주어졌을 때, 규칙을 만족하는 적절한 치환 규칙을 선택하여 해독했을 때 나타날 수 있는 "MOO"의 최대 개수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 퍼즐의 행 개수 과 열 개수 이 공백으로 구분되어 주어진다. ()
이어서 개의 줄에 걸쳐 각 줄에 개의 대문자 알파벳으로 구성된 암호화된 퍼즐의 정보가 주어진다.
출력
규칙을 만족하는 치환 방식을 통해 해독했을 때 얻을 수 있는 "MOO"의 최대 개수를 출력한다.
예제 입력 1
4 6
TAMHGI
MMQVWM
QMMQSM
HBQUMQ
예제 출력 1
6
코드 제출
코드를 제출하려면 로그인이 필요합니다.
로그인내 제출
제출 내역이 없습니다.
맞은 사람
아직 맞은 사람이 없습니다.
난이도 투표
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
제출 내역이 없습니다.