칠판에 N개의 정수가 적혀 있다. A_k와 B_k를 다음과 같이 정의하자.
임의로 두 수를 고를 때 모든 쌍이 선택될 확률은 같으며, 모든 시행은 독립이다.
A_0,⋯,A_N−1과 B_0,⋯,B_N−1을 998\\, 244\\, 353$$(=119\times 2^{23}+1)으로 나눈 나머지를 구하여라. 998,244,353은 소수이다.
첫 번째 줄에 N이 주어진다. (1≤N≤200,000)
두 번째 줄에 칠판에 적힌 N개의 정수가 공백으로 구분되어 주어진다. 각 수는 0 이상 998,244,353 미만이다.
첫 번째 줄에 A_0,⋯,A_N−1을 998,244,353으로 나눈 나머지를 공백으로 구분하여 출력한다.
두 번째 줄에 B_0,⋯,B_N−1을 998,244,353으로 나눈 나머지를 공백으로 구분하여 출력한다.
유리수를 기약분수로 나타냈을 때 ba인 경우 이 수를 소수인 p로 나눈 나머지는 a≡c⋅b(modp)를 만족하는 0 이상 p 미만의 정수 c이며, b가 p의 배수가 아니라면 이 값은 유일하다.
이 문제에서는 가능한 모든 입력에 대해 A_0,⋯,A_N−1과 B_0,⋯,B_N−1이 유리수이고 각 수를 기약분수로 나타냈을 때 분모가 998,244,353의 배수가 아니라는 것을 증명할 수 있다.