
addressOfIP
Vì muốn làm hacker nên P dấn thân vào học lập trình. Trong một hôm đang lướt lướt trên mạng, P tự nhiên nhận được một chuỗi số từ một người bạn bí ẩn gửi kèm những chữ cái lạ lùng "0X0X0X"
, vì muốn tìm hiểu những dãy số đó là gì nên P đã bắt đầu tìm hiểu nghiên cứu những dãy số lạ kia và rồi P cũng biết đó là những địa chỉ IP của máy tính và chúng đang được mã hóa dưới dạng những con số. Vì mới học lập trình nên chàng hacker đang gặp rất nhiều khó khăn, hãy giúp đỡ chàng trai đó nào.
Kết quả được xuất theo quy tắc xxx.xxx.xxx.xxx
Lưu ý: những số mã hóa theo dãy 32 bit. Hãy nhìn những ví dụ để hiểu thêm.
Ví dụ:
- Với
arr = [1,3232235777]
thìaddressOfIP(a) = ["0.0.0.1","192.168.1.1"]
Giải thích:-
Với số
1
chuyển sang dạng nhị phân32
bit là0000000000000000000000000000001
, sau đó chia là4
phần8
bit phân tách nhau bởi dấu ( . ), trong mỗi phần đó chuyển về dạng thập phân và xuất ra theo như mẫu là"0.0.0.1"
-
Với số
3232235777
chuyển sang dạng nhị phân 32 bit là11000000101010000000000100000001
, sau đó chia làm4
phần8
bit phân tách nhau chuyển về dạng thâp phân rồi xuất theo mẫu"192.168.1.1"
-
Đầu vào/Đầu ra:
- [Thời gian chạy] 0.5s với C++, 3s với Java và C#, 4s với Python, Go và JavaScript.
- [Đầu vào] Array of longs: arr
1 ≤ arr.length ≤ 104
0 ≤ arr[i] < 232
- [Đầu ra] Array of String.
Xuất kết quả theo đúng quy chuẩn yêu cầu.
Post Comment