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

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

흑백 이미지

면접 대비

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

요약
네 항목의 진리표로 주어진 논리 연산을 같은 크기의 흑백 이미지 두 장에 픽셀 단위로 적용해 결과를 출력한다.
난이도

쉬움10점 중 2점

유형
구현, 배열, 시뮬레이션, 비트 연산
정답자
아직 제출이 없습니다

문제

컴퓨터 그래픽스의 기본 문제 중 하나는 흑백 이미지를 처리하는 것이다. 이미지는 너비 w, 높이 h인 직사각형을 w×h개의 단위 정사각형으로 나눈 것으로 나타낼 수 있고, 각 단위 정사각형은 흰색이나 검은색 중 하나의 색을 가진다. 이런 단위 정사각형을 픽셀이라고 한다. 컴퓨터 메모리에서 이미지는 0과 1로 이루어진 직사각형 표로 저장된다.

여러 분야에서 이미지를 합성하는 문제가 자주 발생한다. 흑백 이미지를 다룰 때 사용하는 가장 단순한 합성 방법 중 하나는 어떤 논리 연산을 픽셀 단위로 적용하는 것이다. 즉, 결과의 픽셀 값은 두 입력의 대응하는 픽셀에 그 논리 연산을 적용한 값이다. 두 인수를 받는 논리 연산은 보통 모든 인수 조합에 대한 연산 결과를 담은 진리표로 주어진다. 예를 들어 「배타적 논리합」 연산의 진리표는 다음과 같다.

첫 번째 인수두 번째 인수결과
000
011
101
110

크기가 같은 두 흑백 이미지에 주어진 논리 연산을 픽셀 단위로 적용한 결과를 계산하는 프로그램을 작성해야 한다.

입력

입력 파일의 첫째 줄에는 두 정수 w와 h가 주어진다. (1 ≤ w, h ≤ 100) 다음 h개 줄은 첫 번째 이미지를 나타내며, 각 줄에는 0이나 1인 문자가 w개 있다. 그다음에는 두 번째 이미지가 같은 형식으로 주어진다. 입력 파일의 마지막 줄에는 논리 연산이 네 개의 수로 주어지며, 각 수는 0이나 1이다. 첫 번째 수는 두 인수가 모두 0일 때 논리 연산을 적용한 결과이고, 두 번째 수는 첫 번째 인수가 0, 두 번째 인수가 1일 때의 결과이며, 세 번째 수는 첫 번째 인수가 1, 두 번째 인수가 0일 때의 결과, 네 번째 수는 두 인수가 모두 1일 때의 결과이다.

출력

출력 파일에는 주어진 논리 연산을 이미지에 적용한 결과를 입력 파일에서 이미지를 나타낸 것과 같은 형식으로 출력한다.

예제1

  1. 예제 1

    입력
    5 3
    01000
    11110
    01000
    10110
    00010
    10110
    0110
    
    예상 출력
    11110
    11100
    11110