사원수의 역원
시간 제한1초메모리 제한256 MB
소수 M과 성분이 M으로 나눈 나머지인 사원수가 최대 10만 개 주어질 때 각 사원수의 모듈러 역원을 구하고 없으면 0을 출력합니다.
문제
사원수(quaternion)는 복소수를 확장해 만든 수 체계다. 을 만족하는 세 허수 단위 , , 로 표현하며, 실수 성분을 네 개 가진다. 이 문제에서는 아래 집합에 속하는 사원수만 다루고, 이를 제한된 사원수라고 부른다.
, , 사이의 성질 때문에 보통의 사원수 두 개를 곱하면 아래 결과가 나온다.
제한된 사원수 두 개의 곱은, 이 둘을 보통의 사원수로 보고 곱한 결과에서 각 정수 성분을 으로 나눈 나머지로 바꾼 값으로 정의한다.
과 제한된 사원수 가 주어질 때, 을 만족하는 제한된 사원수 를 구하여라.
입력
첫 줄에 자연수 과 ()가 공백으로 구분되어 주어진다. 은 소수이고, 즉 약수가 1과 자기 자신뿐이며, 이다.
이어지는 개의 줄에는 각각 를 나타내는 네 정수 , , , ()가 공백으로 구분되어 주어진다. 이때 이다.
출력
가 주어질 때마다 을 만족하는 제한된 사원수 의 네 정수 , , , 를 공백으로 구분해 한 줄에 출력한다. 조건을 만족하는 는 존재하면 하나뿐이므로 답은 유일하다. 그런 가 없으면 0을 공백으로 구분해 네 번 출력한다.