만드는 중입니다

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

광학 문자 인식

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

요약
같은 크기의 이진 글자 견본 n개와 이진 이미지 하나가 주어질 때, 칸이 가장 많이 일치하는 견본의 1부터 시작하는 번호를 출력합니다.
난이도

쉬움10점 중 2점

유형
배열, 시뮬레이션
정답자
아직 제출이 없습니다

문제

세계적으로 알려진 회사 Maple이 최신 휴대전화 myPhone을 출시할 준비를 하고 있다. myPhone에는 내장 카메라로 텍스트를 스캔하는 기능이 들어간다.

휴대전화는 nn개의 서로 다른 문자를 인식해야 한다. 문자 견본은 w×hw \times h 칸으로 이루어진 직사각형 표이다. 각 칸에는 문자의 그 위치에 잉크가 있어야 하면 11, 아니면 00이 들어 있다.

스캔 프로그램은 촬영한 이미지를 w×hw \times h 픽셀 크기의 직사각형들로 나누고 (각 픽셀은 검은색이면 11, 흰색이면 00으로 표시된다), 이것을 문자 견본과 비교한다.

Maple의 특수 부서가 유한 오토마타 기반 글꼴 평가 기준 (КОШКА)을 만들고, 이 기준으로 두 표의 유사도를 정의했다. 유사도는 견본과 이미지에서 값이 같은 칸의 개수이다.

문자들의 집합과 이미지가 주어졌을 때, КОШКА 기준으로 이미지와 가장 유사한 문자, 즉 유사도가 가장 큰 문자를 찾는 프로그램을 작성하라.

입력

첫 줄에 세 자연수 nn, ww, hh (n,w,h≤100n, w, h \le 100)가 주어진다. 이어서 문자 견본을 나타내는 nn개의 블록이 주어진다. 각 블록은 0과 1로 이루어진 줄 hh개로 되어 있고, 각 줄에는 ww개의 문자가 있다. 그 다음에는 같은 형식의 이미지가 주어진다.

출력

가장 유사한 문자의 번호 하나를 출력한다. 문자는 입력에 나타난 순서대로 1부터 번호를 매긴다. 여러 문자가 같은 유사도를 가지면 그중 아무 번호나 출력해도 된다.

예제2

  1. 예제 1

    입력
    2 2 2
    11
    11
    00
    00
    00
    01
    
    예상 출력
    2
    
  2. 예제 2

    입력
    2 2 2
    11
    11
    00
    00
    01
    10
    
    예상 출력
    1