멋진 배열
시간 제한2초메모리 제한512 MB
N x N 배열의 지워진 칸을 채워 어떤 순열을 골라도 대각선 합이 같아지도록 만드는 경우의 수를 1e9+7로 나눈 나머지로 구합니다.
문제
크기가 인 배열 와 부터 까지의 정수로 이루어진 순열 가 있다.
순열 를 어떻게 고르더라도 가 항상 같으면, 그 배열을 멋진 배열이라고 한다.
일부 칸이 지워진 배열 가 주어진다. 지워진 칸을 모두 채워 멋진 배열을 만드는 방법의 수를 구하는 프로그램을 작성하시오. 완성된 배열이 한 칸이라도 다르면 서로 다른 방법으로 센다.
입력
첫째 줄에 배열 의 크기 ()이 주어진다.
둘째 줄부터 개의 줄에 배열 가 한 줄에 한 행씩 주어진다. 각 줄은 공백 없이 개의 문자로 이루어진다. 지워진 칸은 -로 주어지고, 나머지 칸은 이상 이하의 정수이다.
출력
멋진 배열을 만드는 방법의 수를 1,000,000,007로 나눈 나머지를 첫째 줄에 출력한다.
새로 채우는 수는 이상의 정수이며, 보다 커도 된다. 방법의 수가 무한한 입력은 주어지지 않는다.