만드는 중입니다

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

유사 그래프

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

요약
정점이 N개인 그래프가 주어졌을 때, 이 그래프와 같은 유사도 그래프를 만드는 두 순열 p, q를 찾고, 없으면 NO를 출력합니다.
난이도

어려움10점 중 8점

유형
그래프, 위상 정렬, 구현
정답자
아직 제출이 없습니다

문제

pp와 qq를 {1,2,…,N}\{1,2,\dots,N\}의 두 순열이라고 하자.

pp와 qq의 유사 그래프 S(p,q)S(p,q)는 다음과 같이 정의한다.

  • S(p,q)S(p,q)는 1번부터 NN번까지 번호가 붙은 NN개의 정점을 가진다.
  • 정점 ii와 정점 jj 사이에 간선이 있는 것은 pi<pjp_i<p_j와 qi<qjq_i<q_j가 모두 참이거나 모두 거짓일 때뿐이다. (1≤i<j≤N1\leq i<j\leq N)

1번부터 NN번까지 번호가 붙은 NN개의 정점을 가진 단순 무방향 그래프 GG가 주어진다. S(p,q)=GS(p,q)=G를 만족하는 순열 쌍 (p,q)(p,q)를 구하시오.

입력

첫째 줄에 정수 NN이 주어진다.

다음 NN개 줄에는 공백으로 구분된 정수 NN개가 한 줄씩 주어진다. ii번째 줄의 jj번째 정수는 E(i,j)E(i,j)이다. E(i,j)E(i,j)는 정점 ii와 정점 jj 사이에 간선이 있으면 1, 없으면 0이다.

출력

조건을 만족하는 (p,q)(p,q)가 없으면 NO를 출력한다.

그렇지 않으면 첫째 줄에 YES를 출력하고, 다음 두 줄에 각각 pp와 qq를 출력한다. 답이 여러 개이면 그중 아무것이나 출력해도 된다.

제한

  • 1≤N≤1001\leq N\leq 100
  • 0≤E(i,j)≤10\leq E(i,j)\leq 1 (1≤i,j≤N1\leq i,j\leq N)
  • E(i,j)=E(j,i)E(i,j)=E(j,i) (1≤i<j≤N1\leq i<j\leq N)
  • E(i,i)=0E(i,i)=0 (1≤i≤N1\leq i\leq N)

예제2

  1. 예제 1

    입력
    4
    0 1 0 1
    1 0 0 0
    0 0 0 1
    1 0 1 0
    
    예상 출력
    YES
    1 2 3 4
    2 4 1 3
    
  2. 예제 2

    입력
    6
    0 1 0 1 0 1
    1 0 0 0 1 0
    0 0 0 1 1 1
    1 0 1 0 0 0
    0 1 1 0 0 0
    1 0 1 0 0 0
    
    예상 출력
    NO