SQRNUM - Số chính phương
Dữ liệu vào: Standard input
Dữ liệu ra: Standard output
Giới hạn thời gian: 2.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: admin

Để tạo niềm vui cho mọi người, chính quyền quyết định lắp đặt một thiết bị ở nơi công cộng. Thiết bị này giao tiếp với mọi người thông qua bàn phím và màn hình và có một số nguyên lưu bên trong bộ nhớ của nó. Ban đầu số nguyên này khởi đầu bằng 1.

Thiết bị hoạt động như sau:

  • Một người gõ một số nguyên từ bàn phím
  • Thiết bị sẽ nhân số trong bộ nhớ của nó với số nguyên vừa gõ và kết quả được lưu lại vào chính bộ nhớ này.
  • Thiết bị sẽ hiển thị lời chào lên màn hình nếu như số trong bộ nhớ là số chính phương. Khi đó người gõ số sẽ được nhiều may mắn.

Viết chương trình, cho biết dãy số nguyên mà những người chơi lần lượt gõ, xác định xem người chơi nào sẽ là người may mắn.

Dữ liệu: Vào từ file SQRNUM.INP

  • Dòng đầu tiên chứa số nguyên N (1≤N≤500000) là số lượng người tham gia giao tiếp với thiết bị.
  • Tiếp theo là N dòng, mỗi dòng ghi một số nguyên được gõ bởi một người theo thứ tự giao tiếp với thiết bị. Các số nguyên này nằm giữa 1 và 106.

Chú ý rằng kết quả số trong bộ nhớ có thể vượt quá kiểu số nguyên 64 bit

Kết quả: Ghi ra file văn bản SQRNUM.OUT

Gồm N dòng là  kết quả mà mỗi người nhận được theo thứ tự. Ghi "YES" nếu kết quả là số chính phương và "NO" trong trường hợp ngược lại.

Ví dụ

  • input
    7
    2
    3
    6
    15
    35
    21
    64
    output
    NO
    NO
    YES
    NO
    NO
    YES
    YES
  • Subtask 1:       Số trong bộ nhớ không vượt kiểu 64 bits                   [50%]
  • Subtask 2:       Số trong bộ nhớ vượt kiểu 64 bits                              [50%]
Back to Top