Gần đây tôi đã liệt kê bài hát Tôi là một Textpert về việc nhắn tin trong khi lái xe và một dòng cụ thể trong bài hát đã truyền cảm hứng cho thử thách này.
Tôi không bao giờ cúi thấp đến mức để nhắn tin hình ảnh / Thay vào đó tôi nhắn tin kết hợp chính xác của những người và số không
Bây giờ rõ ràng, đây sẽ là một điều gần như không thể làm được trong đầu và vì vậy bạn nên giúp các nhà văn bản trên toàn thế giới bằng cách mã hóa một chương trình để làm điều tương tự.
Công việc của bạn là lấy tên của tệp hình ảnh với các 500x500
pixel kích thước và xuất tệp dưới dạng nhị phân. Bạn cũng có thể lấy một hình ảnh làm đầu vào, nếu ngôn ngữ của bạn hỗ trợ nó.
Bạn có thể sử dụng tệp hình ảnh với phần mở rộng
.jpg
.png
.gif
.bmp
.svg
Cho phép tôi trình bày cách chuyển đổi hình ảnh thành nhị phân, cho những người không hiểu ý tôi.
Bước 1
Lấy pixel đầu tiên trong tệp và truy xuất giá trị RGB của nó dưới dạng 3 số thập phân: R, G và B. Ví dụ, giả sử rằng pixel đầu tiên là 255,0,0
(màu đỏ).
Bước 2
Chuyển đổi mỗi số thành biểu diễn nhị phân 8 bit của nó và ghép thành một số 24 bit duy nhất. Ví dụ, điều này mang lại111111110000000000000000
Bước 3
Thêm số 24 bit này vào đầu ra cuối cùng. Do đó, đầu ra cuối cùng phải là các 6000000
chữ số dài và phải bao gồm toàn bộ 1
và0
Đây là một mã golf để mã ngắn nhất chiến thắng!