대칭 격자
시간 제한2초메모리 제한1024 MB
열의 개수가 짝수인 부분 격자 중 세로 중심선을 기준으로 좌우가 대칭인 것의 개수를 구합니다.
문제
크기의 격자 가 주어진다. 격자의 행 열 칸에는 알파벳 대문자 가 적혀 있다.
다음 조건을 모두 만족하는 격자를 대칭 격자라고 한다.
- 1개 이상의 행과 2개 이상의 짝수 개수의 열을 포함한다.
- 격자의 정가운데 세로축을 기준으로 격자를 접었을 때 서로 맞닿는 문자가 모두 같다.
- 구체적으로, 크기가 인 격자 에서 , 를 만족하는 모든 에 대해 이다.
격자 에서 연속한 행들과 연속한 열들을 골라 만들 수 있는 부분 격자 중, 대칭 격자인 것의 개수를 구하라.
입력
첫째 줄에 격자 의 행 개수 과 열 개수 이 공백으로 구분되어 주어진다. ()
다음 개의 줄에는 이 공백 없이 주어진다. 는 격자 의 행 열에 적힌 문자이며, 알파벳 대문자 중 하나이다.
출력
격자 의 부분 격자 중 대칭 격자인 것의 개수를 출력한다.
힌트
이 문제는 Python3로 통과한다고 보장할 수 없다. Python을 쓴다면 문법은 같으면서 보통 더 빠르게 동작하는 PyPy3로 제출하는 것을 권장한다.