Mỗi tế bào trong một máy tự động di động giống như cuộc sống chỉ cần một bit để thể hiện nó vì nó chỉ có thể sống hoặc chết. Điều đó có nghĩa là chỉ có hai màu; khá nhàm chán.
Hình ảnh bình thường có 24 bit cho mỗi pixel (8 trong mỗi RGB). Điều này có nghĩa là trong một hình ảnh bình thường có pixel là các ô bạn có thể mô phỏng 24 trò chơi giống như cuộc sống cùng một lúc!
Thử thách
Nhiệm vụ của bạn là viết một chương trình sẽ áp dụng một thế hệ quy tắc của máy tự động di động giống như cuộc sống vào hình ảnh có chiều sâu 24 bit (ở bất kỳ định dạng nổi tiếng nào bạn muốn) và xuất ra hình ảnh kết quả.
Mỗi lớp trong số 24 lớp sẽ sử dụng cùng một quy tắc giống như cuộc sống, hoàn toàn nằm trong lớp của chính nó. 24 lớp không tương tác với nhau.
Cũng thế
- Số không là tế bào chết và tế bào là tế bào sống.
- Điều kiện biên là định kỳ (tạo thành một hình xuyến).
- Bất kỳ kích thước hình ảnh nên làm việc.
Đầu ra đầu vào
Chương trình của bạn cần có 3 đối số, thông qua stdin hoặc dòng lệnh (hoặc tương đương gần nhất với ngôn ngữ của bạn):
- Tên của tệp hình ảnh đầu vào.
- Một chuỗi các chữ số từ 0 đến 8 theo thứ tự tăng dần biểu thị khi các ô mới được sinh ra:
- Nếu chữ số d nằm trong chuỗi thì các tế bào chết sẽ sống lại khi chúng có hàng xóm sống d .
- Ví dụ:
3
là cuộc sống bình thường - Các tế bào chết với chính xác 3 người hàng xóm sống lại.
- Một chuỗi các chữ số từ 0 đến 8 theo thứ tự tăng dần biểu thị khi các ô hiện có tồn tại:
- Nếu chữ số d nằm trong chuỗi thì các tế bào sống với hàng xóm sống d sẽ tồn tại đến thế hệ tiếp theo, nếu không chúng sẽ chết.
- Ví dụ:
23
là Cuộc sống bình thường - Chỉ các ô có chính xác 2 hoặc 3 hàng xóm tồn tại đến vòng tiếp theo.
Lưu ý rằng khu phố Moore luôn được sử dụng. Đọc cái này hoặc cái này để biết thêm thông tin về những gì định nghĩa chính xác một máy tự động giống như cuộc sống và nhiều quy tắc thú vị.
Hình ảnh đầu ra 1 thế hệ sau phải được hiển thị hoặc lưu dưới dạng out.png
( bmp
hoặc bất cứ thứ gì).
Nộp hồ sơ
Mã ngắn nhất tính bằng byte thắng.
Bạn được yêu cầu bao gồm ít nhất một hình ảnh thử nghiệm và ba thế hệ tiếp theo ngay lập tức cho một số quy tắc không tầm thường. Sử dụng hình đại diện của bạn và các quy tắc Cuộc sống bình thường nếu bạn không thể nghĩ gì tốt hơn.
Nếu bạn thích, bạn có thể sử dụng Súng bắn tỉa Gosper này trong đó các bit sống duy nhất nằm trong lớp 128 màu xanh lá cây (nó chỉ chắc chắn hoạt động trong Cuộc sống bình thường):
Đăng các chuỗi thú vị hoặc thậm chí hoạt hình rất được khuyến khích.