연결된 지배 집합

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

요약
n×m 격자 그래프에서 크기가 nm/2 이하인 연결된 지배 집합을 구성하거나 존재하지 않음을 판정한다.
난이도

보통10점 중 7점

유형
그래프, 그리디, 구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

무향 그래프 G=(V,E)G=(V,E)에서 다음의 조건을 만족하는 정점 집합 SS를 그래프 GG의 지배 집합이라고 부릅니다.

  • SS에 속하지 않는 모든 정점 vv에 대해 간선 (u,v)(u,v)가 EE에 속하도록 하는 정점 u∈Su \in S가 하나 이상 존재합니다.

또한, 다음의 조건을 만족하는 정점 집합 S′S'를 그래프 GG의 연결된 지배 집합이라고 부릅니다.

  • S′S'는 그래프 GG의 지배 집합입니다.
  • 그래프 GG에서 S′S'에 의해 유도된 부분 그래프는 연결 그래프입니다.

요약하자면, 어떤 정점 집합 S′S'가 그래프의 연결된 지배 집합이 되기 위해서는, GG의 모든 정점이 S′S'에 속하거나 S′S'의 어떤 정점과 인접한 상태여야 하며, S′S'에 속하는 임의의 두 정점 uu, vv를 선택할 때 S′S'에 속하는 정점만을 포함하는 경로로 연결되어 있어야 합니다.

nn개의 행과 mm개의 열이 있으며, 상하좌우로 인접한 모든 두 칸 사이에 간선이 존재하는 격자 그래프를 생각합시다. 이 그래프에는 nmnm개의 정점과 2nm−n−m2nm-n-m개의 간선이 존재합니다. 이 그래프에 대해 흐즈로는 다음과 같은 가설을 세웠습니다.

  • 22 이상의 임의의 nn과 mm에 따라 정의된 격자 그래프에서, 크기가 nm2\frac{nm}{2} 이하인 연결된 지배 집합 DD가 존재합니다.

흐즈로는 매우 많은 경우에 이 사실이 성립함을 직접 증명했습니다. 그러나 아직 모든 경우에 대해서 이 사실을 증명한 것이 아니기 때문에, 이 가설이 틀린 경우가 있을지도 모릅니다. nn과 mm이 주어질 때, nn과 mm에 대해 정의된 격자 그래프에서 크기가 nm2\frac{nm}{2} 이하인 연결된 지배 집합 DD가 존재하는지 판단하고, 존재한다면 그러한 집합 DD를 출력하세요.

입력

한 줄에 행의 개수 nn과 열의 개수 mm이 공백으로 분리되어 주어집니다. (2≤n,m≤10002 \le n,m \le 1000)

출력

조건을 만족하는 집합 DD가 존재한다면, YES를 출력하고, 그다음 줄부터 nn개의 행에 걸쳐 이하의 설명에 따라 집합 DD를 출력하세요.

DD를 표현하기 위해, nn개의 행에 걸쳐 각 줄에 길이가 mm인 문자열을 출력해야 합니다. 문자열의 각 문자는 다음의 조건을 만족해야 합니다.

  • ii번째 행과 jj번째 열에 해당하는 정점이 DD에 포함되어 있다면, ii번째 줄의 jj번째 문자는 1이어야 합니다.
  • 그렇지 않다면, ii번째 줄의 jj번째 문자는 0이어야 합니다.

조건을 만족하는 집합 DD가 여러 개 존재한다면 그 중 어느 것을 출력해도 정답으로 인정됩니다.

조건을 만족하는 집합 DD가 존재하지 않는다면, 한 줄에 NO를 출력하세요.

힌트

어떤 그래프 G=(V,E)G=(V,E)와 어떤 정점 집합 A⊆VA \subseteq V에 대해, AA에 의해 유도된 부분 그래프는 AA에 포함된 정점과 양쪽 끝점이 모두 AA에 해당하는 간선 전부로 이루어진 부분 그래프로 정의됩니다.

연결된 지배 집합에 대한 정의를 이해하기 어려운 경우 영어 위키백과의 "Connected dominating set" 문서를 참고할 수 있습니다.

예제2

  1. 예제 1

    입력
    3 3
    
    예상 출력
    YES
    010
    111
    000
    
  2. 예제 2

    입력
    4 4
    
    예상 출력
    YES
    0100
    0111
    1110
    0010