광학 문자 인식
시간 제한2초메모리 제한1024 MB
같은 크기의 이진 글자 견본 n개와 이진 이미지 하나가 주어질 때, 칸이 가장 많이 일치하는 견본의 1부터 시작하는 번호를 출력합니다.
문제
세계적으로 알려진 회사 Maple이 최신 휴대전화 myPhone을 출시할 준비를 하고 있다. myPhone에는 내장 카메라로 텍스트를 스캔하는 기능이 들어간다.
휴대전화는 개의 서로 다른 문자를 인식해야 한다. 문자 견본은 칸으로 이루어진 직사각형 표이다. 각 칸에는 문자의 그 위치에 잉크가 있어야 하면 , 아니면 이 들어 있다.
스캔 프로그램은 촬영한 이미지를 픽셀 크기의 직사각형들로 나누고 (각 픽셀은 검은색이면 , 흰색이면 으로 표시된다), 이것을 문자 견본과 비교한다.
Maple의 특수 부서가 유한 오토마타 기반 글꼴 평가 기준 (КОШКА)을 만들고, 이 기준으로 두 표의 유사도를 정의했다. 유사도는 견본과 이미지에서 값이 같은 칸의 개수이다.
문자들의 집합과 이미지가 주어졌을 때, КОШКА 기준으로 이미지와 가장 유사한 문자, 즉 유사도가 가장 큰 문자를 찾는 프로그램을 작성하라.
입력
첫 줄에 세 자연수 , , ()가 주어진다. 이어서 문자 견본을 나타내는 개의 블록이 주어진다. 각 블록은 0과 1로 이루어진 줄 개로 되어 있고, 각 줄에는 개의 문자가 있다. 그 다음에는 같은 형식의 이미지가 주어진다.
출력
가장 유사한 문자의 번호 하나를 출력한다. 문자는 입력에 나타난 순서대로 1부터 번호를 매긴다. 여러 문자가 같은 유사도를 가지면 그중 아무 번호나 출력해도 된다.