Problem hidden
This problem was hidden by Editorial Board member probably because it has incorrect language version or invalid test data, or description of the problem is not clear.

EIAPPLEBOX - Count Inversion

Cho 3 số N, A, P, xây dựng danh sách N phần tử như sau

  • array[0] = (A * A) % P
  • array[i] = (array[i-1] * A) % P với 0 < i < N

Hãy đếm số lượng các cặp số 0 ≤ i < j < N sao cho array[i] > array[j]

Input

Dòng đầu tiên là số test cases T (1 ≤ T ≤ 10)

Mỗi dòng tiếp theo mô tả một test case, gồm 3 số nguyên N (1 ≤ N ≤ 107), A (1 ≤ A ≤ 109), và P là số nguyên tố lớn hơn 109

Output

In ra số lượng cặp số theo yêu cầu

Example

Input:
2
70 1356 1000000297
63 159 1000002937
Output:
1230
856

Added by:Ha Minh Ngoc
Date:2016-05-16
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:CSHARP C++ 4.3.2 CPP CPP14 CPP14-CLANG FSHARP GO JAVA JS-MONKEY NODEJS PHP PYTHON PYPY PYPY3 PYTHON3 RUBY SQLITE SWIFT VB.NET
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.