Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập hieubinhphuongclassc

Hiệu bình phương

Dễ Cài đặt

  • 100p Điểm
  • 1.0s Thời gian
  • 256M Bộ nhớ
  • 100% Tỉ lệ AC
  • 1 Số AC

Cho dãy gồm \(n\) số nguyên dương \(a_1, a_2, \ldots, a_n\).

Yêu cầu: Với mỗi \(a_i\), hãy tìm hai số nguyên dương \(x_i, y_i\) (\(0 < x_i, y_i < a_i\)) sao cho

\[ x_i^2 - y_i^2 = a_i. \]

Nếu tồn tại nhiều cặp thoả mãn, hãy in ra cặp có \(x_i\) nhỏ nhất. Nếu không tồn tại, in ra \(-1\).

Input

  • Dòng đầu chứa số nguyên dương \(n\) (\(n \le 100\)).
  • Dòng thứ hai chứa \(n\) số nguyên dương \(a_1, a_2, \ldots, a_n\) (\(1 \le a_i \le 10^6\)).

Output

Ghi ra \(n\) dòng. Dòng thứ \(i\):

  • In ra \(x_i\ y_i\) nếu tồn tại cặp thoả mãn, và trong các cặp thoả mãn chọn cặp có \(x_i\) nhỏ nhất;
  • Ngược lại in ra \(-1\).

Scoring

  • Subtask 1 (50%): \(a_i \le 10^3\).
  • Subtask 2 (50%): \(a_i \le 10^6\).

Sample Input 1

3
15 4 9

Sample Output 1

4 1
-1
5 4

Bình luận

Chưa có bình luận nào.