[Khánh Hòa - TS10 - 2024] Bài 4

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch, TEXT

Số chính phương là số mà nếu lấy căn bậc hai của nó thì được một số nguyên dương. Hay nói cách khác, bình phương của một số nguyên dương là một số chính phương. Ví dụ: 9 là số chính phương vì ~\sqrt{9} = 3~ (hay ~3^2 = 9~), nên 9 là số chính phương. Nhưng 10 thì không phải số chính phương vì ~\sqrt{10} \approx 3,16228~.

Yêu cầu: Cho ~n~ số nguyên dương ~x_1, x_2, ..., x_n~. Tương ứng với mỗi ~x_i~ (~1 \leq i \leq n~), hãy cho biết có nhiều nhất bao nhiêu số chính phương khác nhau mà tổng của chúng không vượt quá ~x_i~.

INPUT

  • Dòng đầu chứa số nguyên dương ~n~ (~1 \leq n \leq 10^5~).
  • Dòng thứ hai chứa ~n~ số nguyên dương ~x_1, x_2, ..., x_n~ (~1 \leq x_i \leq 10^{18}~, ~1 \leq i \leq n~).

OUTPUT

~n~ số nguyên trên cùng một dòng trong đó số thứ ~i~ là đáp án cần tìm tương ứng của ~x_i~.

SAMPLE INPUT

2
14 10

SAMPLE OUTPUT

3 2

Giải thích:

  • Với ~x_1 = 14~ ta chỉ có thể chọn nhiều nhất ~3~ số chính phương là ~1, 4, 9~ vì ~1 + 4 + 9 \leq 14~.
  • Với ~x_2 = 10~ ta chỉ có thể chọn nhiều nhất ~2~ số chính phương là ~1~ và ~4~ hoặc ~1~ và ~9~ vì ~1 + 4 \leq 10~ hoặc ~1 + 9 \leq 10~.

SUBTASKS

  • ~50\%~ test tương ứng với ~50\%~ số điểm có ~1 \leq n \leq 10^3, 1 \leq x_i \leq 10^9~.
  • ~50\%~ test tương ứng với ~50\%~ số điểm còn lại không có ràng buộc gì thêm.

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.