P=998244353은 소수다. N×N 정수 행렬 A가 주어졌을 때, 법 P 위에서 A의 역행렬을 구하는 프로그램을 작성하시오.
AB≡BA≡IN(modP)를 만족하는 행렬 B를 A의 역행렬이라고 하며, A−1로 표기한다. 두 행렬이 합동이라는 것은 같은 자리의 원소가 모두 법 P에서 합동이라는 뜻이다. IN은 N×N 단위행렬이며, i=j일 때 Ii,j=0, Ii,i=1이다.
P가 소수이므로 역행렬은 존재하면 유일하다. 역행렬이 존재할 필요충분조건은 A의 행렬식이 P의 배수가 아닌 것이다. 정수로 계산한 행렬식이 0이 아니어도 P로 나누어떨어지면 법 P 위에서는 역행렬이 없다.
첫째 줄에 행렬의 크기 N이 주어진다. (1≤N≤500)
다음 N개 줄에 행렬 A의 정보가 주어진다. 각 줄은 N개의 정수로 이루어져 있으며, 정수의 절댓값은 1,000보다 작거나 같다. 음수 원소는 법 P에서 대응하는 나머지로 읽는다.
법 P 위에서 A의 역행렬이 존재하면 N개의 줄에 걸쳐 A−1을 출력한다. 각 줄에는 N개의 정수를 공백 하나로 구분해 출력하며, 각 정수는 0 이상 P 미만이어야 한다.
역행렬이 존재하지 않으면 no inverse를 출력한다.