जीवन की तरह सेल्युलर ऑटोमोबोन की प्रत्येक कोशिका को केवल इसका प्रतिनिधित्व करने के लिए एक बिट की आवश्यकता होती है क्योंकि यह केवल जीवित या मृत हो सकती है। इसका मतलब है कि केवल दो रंग हैं; बहुत उबाऊ है।
सामान्य छवियों में 24 बिट प्रति पिक्सेल (आरजीबी में से प्रत्येक में 8) हैं। पिक्सल के साथ एक सामान्य छवि में इसका मतलब यह है कि कोशिकाओं को आप एक ही बार में 24 जीवन जैसे खेल का अनुकरण कर सकते हैं!
चुनौती
आपका कार्य एक प्रोग्राम लिखना है जो जीवन के नियमों की एक पीढ़ी-जैसे सेलुलर ऑटोमेटन को 24-बिट डेप्थ इमेज (किसी भी प्रसिद्ध प्रारूप में जो आपको पसंद है) पर लागू होगा, और परिणामी छवि को आउटपुट करेगा।
24 परतों में से प्रत्येक एक ही जीवन-समान नियम का उपयोग करेगा, सख्ती से यह अपनी परत के भीतर है। 24 परतें एक-दूसरे के साथ बातचीत नहीं करती हैं।
भी
- शून्य मृत कोशिकाएं हैं और जीवित कोशिकाएं हैं।
- सीमा की स्थिति आवधिक हैं (एक टोरस का गठन)।
- किसी भी छवि आयाम को काम करना चाहिए।
इनपुट आउटपुट
आपके कार्यक्रम को 3 तर्क में लेने की जरूरत है, स्टडिन या कमांड लाइन (या आपकी भाषा के निकटतम समकक्ष) के माध्यम से:
- इनपुट छवि फ़ाइल का नाम।
- बढ़ते हुए क्रम में 0 से 8 अंकों की एक स्ट्रिंग जो नई कोशिकाओं के पैदा होने पर निरूपित करती है:
- यदि अंक d स्ट्रिंग में है तो मृत कोशिकाएं जीवित हो जाती हैं जब उनके पास d जीवित पड़ोसी होते हैं।
- उदाहरण:
3
सामान्य जीवन है - ठीक 3 जीवित पड़ोसियों के साथ मृत कोशिकाएं जीवन में आती हैं।
- बढ़ते हुए क्रम में 0 से 8 अंकों की एक स्ट्रिंग जो मौजूदा कोशिकाओं के जीवित रहने पर दर्शाती है:
- यदि अंक d स्ट्रिंग में है तो d जीवित पड़ोसियों के साथ जीवित कोशिकाएं अगली पीढ़ी तक जीवित रहती हैं, अन्यथा वे मर जाती हैं।
- उदाहरण:
23
सामान्य जीवन है - केवल 2 या 3 पड़ोसियों के साथ ही कोशिकाएं अगले दौर में जीवित रहती हैं।
ध्यान दें कि मूर पड़ोस हमेशा उपयोग किया जाता है। पढ़ें इस या इस का ठीक क्या एक जीवन की तरह आटोमैटिक मशीन और कई दिलचस्प rulesets को परिभाषित करता है के बारे में अधिक जानकारी के लिए।
1-पीढ़ी-बाद की आउटपुट छवि को या तो out.png
(या bmp
या जो भी) के रूप में प्रदर्शित या सहेजा जाना चाहिए ।
प्रस्तुत करने
बाइट्स में सबसे छोटा कोड जीतता है।
आपको कुछ गैर-तुच्छ नियमों के लिए कम से कम एक परीक्षण छवि और इसकी तीन तत्काल बाद की पीढ़ियों को शामिल करना आवश्यक है। यदि आप कुछ बेहतर नहीं सोच सकते तो अपने अवतार और सामान्य जीवन के नियमों का उपयोग करें।
यदि आप चाहें, तो आप इस गोस्पर ग्लाइडर गन का उपयोग कर सकते हैं, जहां केवल जीवित बिट्स हरी 128 परत में हैं (यह केवल सामान्य जीवन में काम करना सुनिश्चित करता है):
दिलचस्प दृश्यों या एनिमेशन को पोस्ट करने से बहुत प्रोत्साहन मिलता है।