만드는 중입니다

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

색깔 완전 매칭의 개수

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

요약
빨간 간선과 파란 간선으로 이루어진 이분 그래프에서 완전 매칭을 빨간 간선 수 k별로 세고, 각 개수를 2로 나눈 나머지로 출력합니다.
난이도

어려움10점 중 8점

유형
행렬, 수학, 그래프
정답자
아직 제출이 없습니다

문제

그래프 GG가 주어진다. GG에는 검은색 정점 nn개와 흰색 정점 nn개가 있으며, 모든 간선은 검은색 정점과 흰색 정점을 잇는다. 따라서 그래프는 이분 그래프이다.

GG의 각 간선은 파란색 또는 빨간색이다. 같은 색의 간선 두 개가 같은 두 정점을 잇는 경우는 없다. 즉, 같은 색의 중복 간선은 없다.

00부터 nn까지의 모든 kk에 대해, 빨간색 간선을 정확히 kk개, 파란색 간선을 정확히 n−kn-k개 포함하는 완전 매칭의 개수를 구하라. 완전 매칭은 어떤 두 간선도 끝점을 공유하지 않는 nn개의 간선 집합이다. 개수가 매우 클 수 있으므로 각 개수를 2로 나눈 나머지로만 출력한다.

입력

첫 줄에 음이 아닌 정수 nn (1≤n≤3001 \le n \le 300)이 주어진다.

이어지는 nn개의 줄에는 공백 없이 nn개의 문자가 주어지며, 빨간색 간선의 인접 행렬을 나타낸다. ii번째 줄의 jj번째 문자가 1이면 ii번째 검은색 정점과 jj번째 흰색 정점을 잇는 빨간색 간선이 있고, 0이면 없다.

다음 nn개의 줄은 같은 형식으로 파란색 간선의 인접 행렬을 나타낸다.

출력

n+1n + 1개의 줄을 출력한다. kk번째 줄 (k=0,1,…,nk = 0, 1, \ldots, n)에는 빨간색 간선을 정확히 kk개 포함하는 완전 매칭의 개수를 2로 나눈 나머지를 출력한다.

힌트

예시에서 완전 매칭은 세 가지이다.

  1. 빨간색 (1,1)(1, 1), 파란색 (2,2)(2, 2)
  2. 빨간색 (1,2)(1, 2), 파란색 (2,1)(2, 1)
  3. 빨간색 (1,2)(1, 2), 빨간색 (2,1)(2, 1)

예제1

  1. 예제 1

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