#5314. Lũy Thừa của Hai (Mã bài: POWOFTWO)

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Hãy kiểm tra số nguyên n có phải là lũy thừa của 2 hay không (tức tồn tại k \ge 0 sao cho n = 2^k ).

Dữ liệu:

  • Dòng đầu chứa số nguyên dương T (1\le T\le 100) là số lượng số cần kiểm tra;
  • T dòng sau, mỗi dòng chứa một số nguyên n với -10^{12} \le n \le 10^{12} .

Kết quả: Gồm T dòng, mỗi dòng là YES nếu số tương ứng là số dương và là lũy thừa của 2 , ngược lại in NO.

Ví dụ:

Dữ liệu:

16

Kết quả:

YES

(Gợi ý khái niệm: số là lũy thừa của 2 khi và chỉ khi có đúng một bit 1 trong biểu diễn nhị phân)