재구역화
시간 제한7초메모리 제한1024 MB
블록 인구가 주어진 직사각형 도시를 W개의 연속된 구역으로 나눠, 구역마다 인구 합이 같아지는지 판단합니다.
문제
인구가 99명인 개의 블록으로 이루어진 작은 도시의 예시이다. 색으로 표시된 부분은 이 도시를 각 33명인 연속된 구역 3개로 나누는 한 가지 방법이다. 다양한 크기의 도시를 고려하여, 블록을 인구가 같은 연속된 구역으로 나눌 수 있는지 판단하라. 모든 도시는 직사각형이며 블록은 최대 25개이다. 원하는 구역의 수는 달라질 수 있다. 두 블록은 변을 공유하면 인접한다. 연속된 구역이란 블록의 집합으로, 구역 안의 한 블록에서 출발해 구역 안에서 인접한 블록으로만 이동하여 구역의 모든 블록에 도달할 수 있는 집합이다.
입력
첫 줄에 직사각형 도시의 행 수와 열 수를 나타내는 두 정수 과 ()가 주어진다. 다음 줄에는 원하는 구역의 수 ()가 주어진다. 이어지는 줄에는 각각 개의 0 이상의 정수가 주어지며, 위쪽 행부터 차례대로 각 행 블록의 인구를 나타낸다. 각 행의 블록은 왼쪽에서 오른쪽 순서로 나열된다. 도시의 총인구는 을 넘지 않는다.
출력
주어진 입력으로 재구역화가 가능하면 "Yes"를, 그렇지 않으면 "No"를 출력한다.