इस चुनौती का उद्देश्य यह निर्धारित करना है कि क्या एक-बिटेनसोनल टुकड़ों के संग्रह को एक निरंतर निरंतर हिस्सा बनाने के लिए टाइल किया जा सकता है।
एक टुकड़ा शून्य और शून्य का एक खाली-खाली क्रम है, जो एक के साथ शुरू और समाप्त होता है। कुछ संभव टुकड़े कर रहे हैं 1
, 101
, 1111
, 1100101
।
टाइलिंग का अर्थ है टुकड़ों की व्यवस्था करना ताकि लोगों का एक एकल सन्निहित ब्लॉक बन जाए। एक टुकड़े में से एक शून्य के स्थान पर कब्जा कर सकता है, लेकिन एक टुकड़े से नहीं, दूसरे टुकड़े से।
समान रूप से, अगर हम किसी को "ठोस सामग्री" और शून्य को "छेद" के रूप में देखते हैं, तो टुकड़ों को फिट होना चाहिए ताकि किसी भी छेद को छोड़ दें।
टाइलिंग बनाने के लिए, टुकड़ों को केवल उनके एक आयामी स्थान के साथ स्थानांतरित किया जा सकता है। (उन्हें विभाजित नहीं किया जा सकता है, या प्रतिबिंबित नहीं किया जा सकता है)। प्रत्येक टुकड़े का एक बार उपयोग किया जाता है।
उदाहरण
तीन टुकड़े 101
, 11
, 101
के रूप में निम्नलिखित है, जहां प्रत्येक टुकड़ा आवश्यक बदलाव के साथ प्रस्तुत किया जाता है में दिखाया गया टाइलों जा सकता है:
101
11
101
इसलिए प्राप्त टाइलिंग है
111111
एक दूसरे उदाहरण के रूप में, टुकड़े 11011
और 1001101
टाइलों नहीं किया जा सकता। विशेष रूप से, पारी
11011
1001101
मान्य नहीं है क्योंकि दो ऐसे हैं जो टकराते हैं; तथा
11011
1001101
मान्य नहीं है क्योंकि परिणाम में एक शून्य होगा।
अतिरिक्त नियम
इनपुट एक या अधिक टुकड़ों में से एक संग्रह है। किसी भी उचित प्रारूप की अनुमति है; उदाहरण के लिए:
- तार की एक सूची, जहां प्रत्येक स्ट्रिंग में दो अलग-अलग, लगातार वर्ण हो सकते हैं;
- कई सरणियाँ, जहां प्रत्येक सरणी में एक टुकड़े के लिए लोगों की स्थिति होती है;
- (विषम) पूर्णांक की एक सूची, प्रत्येक संख्या का द्विआधारी प्रतिनिधित्व एक टुकड़ा को परिभाषित करता है।
उत्पादन एक truthy मूल्य होना चाहिए, अगर एक खपरैल संभव है, और एक falsy मूल्य अन्यथा। आउटपुट मान के अनुरूप होने की आवश्यकता नहीं है; यही है, वे अलग-अलग इनपुट के लिए अलग हो सकते हैं।
प्रोग्राम या फ़ंक्शंस की अनुमति है, किसी भी प्रोग्रामिंग भाषा में । मानक खामियों को मना किया जाता है।
बाइट्स में सबसे छोटा कोड जीतता है।
परीक्षण के मामलों
प्रत्येक इनपुट एक अलग लाइन पर है
Truthy
1
111
1, 1
11, 111, 1111
101, 11, 1
101, 11, 101
10001, 11001, 10001
100001, 1001, 1011
10010001, 1001, 1001, 101
10110101, 11001, 100001, 1
110111, 100001, 11, 101
1001101, 110111, 1, 11, 1
Falsy
101
101, 11
1, 1001
1011, 1011
11011, 1001101
1001, 11011, 1000001
1001, 11011, 1000001, 10101
101101
सच्चाई होगी, भले ही उनमें से कोई परिमित संख्या एक सन्निहित ब्लॉक में परिणाम न हो।