Thao tác bitMảng
Mô tả
Tại trung tâm dữ liệu của 8syncdev, mỗi sinh viên khi đăng ký luyện code sẽ được cấp một mã số (ID) duy nhất dạng số thập phân. Để hệ thống máy chấm xử lý nhanh và tối ưu bộ nhớ, ID này cần được chuyển đổi sang chuỗi bit chỉ gồm các chữ số 0 và 1.
Nhiệm vụ của bạn là viết một hàm nhận vào một số nguyên không âm là ID của sinh viên, sau đó mã hóa nó thành chuỗi biểu diễn nhị phân tương ứng.
Đầu vào
- Một số nguyên không âm
n(kiểuint), trong đó0 <= n <= 10^9.
Đầu ra
- Trả về một chuỗi (
string) biểu diễn giá trị nhị phân củan(không chứa các số0thừa ở đầu, ngoại trừ trường hợpn = 0thì trả về"0").
Ràng buộc
0 <= n <= 10^9- Độ dài chuỗi kết quả tối đa là 30 ký tự.
- Độ phức tạp thời gian mục tiêu: O(log n).
Ví dụ
Ví dụ 1:
- Đầu vào:
13 - Đầu ra:
"1101" - Giải thích: Ta có 13 = 8 + 4 + 1 = 2^3 + 2^2 + 2^0. Tương ứng với các bit tại vị trí 3, 2 và 0 bằng 1, các bit còn lại bằng 0. Viết từ cao xuống thấp ta được chuỗi
"1101".
Ví dụ 2:
- Đầu vào:
0 - Đầu ra:
"0" - Giải thích: Đây là trường hợp đặt biệt, số 0 được mặc định biểu diễn bởi chuỗi
"0".