कहते हैं कि आपका काम पोल पेंट करना है, और एक ग्राहक आपको 4 लाल वर्गों और 3 पीले वर्गों के साथ एक पोल पेंट करने के लिए कहता है। आप इस प्रकार से बहुत आसानी से कर सकते हैं:
r y r y r y r
सिर्फ पीली और लाल धारियों के साथ। अब कहते हैं कि आपका ग्राहक आपको 2 लाल खंडों, 2 पीले खंडों और 1 हरे खंड के साथ एक पोल पेंट करने के लिए कहता है । ऐसे कुछ तरीके हैं जिनसे आप अपना पोल पेंट कर सकते हैं
g y r y r
y g r y r
y r g y r
y r y g r
y r y r g
g r y r y
r g y r y
r y g r y
r y r g y
r y r y g
y r g r y
r y g y r
अधिक सटीक रूप से पोल पेंट करने के 12 तरीके हैं। यह अधिक रंगों और वर्गों को शामिल करता है जो इसमें शामिल हैं
अब यदि आपका ग्राहक कहता है कि वे 3 लाल खंड और 1 पीला खंड चाहते हैं, तो इस तरह से एक पोल पेंट करने का कोई तरीका नहीं है। कोई फर्क नहीं पड़ता कि आप वर्गों को व्यवस्थित करने का प्रयास कैसे करते हैं दो लाल खंड स्पर्श करेंगे, और जब दो लाल खंड स्पर्श करते हैं तो वे एक ही लाल खंड बन जाते हैं।
और यह पोल डंडों के लिए हमारे एक नियम से बहुत अधिक है
आसन्न खंड समान रंग के नहीं हो सकते हैं
कार्य
आवश्यक रंग और वर्गों की एक सूची को देखते हुए, अनुरोध के अनुसार एक पोल पेंट करने के लिए संभावित तरीकों की संख्या को आउटपुट करें। आप किसी भी उचित तरीके से रंगों का प्रतिनिधित्व कर सकते हैं (पूर्णांक, वर्ण, स्ट्रिंग्स), लेकिन आपको एक बार में 255 से अधिक अलग-अलग रंग नहीं दिए जाएंगे। यदि आप चाहें तो रंगों को निर्दिष्ट नाम नहीं भी चुन सकते हैं और यदि आसान है तो बस अनुभाग की सूची लें।
परीक्षण के मामलों
ये हाथ से गणना करने के लिए कठिन हैं, खासकर जब वे बड़े हो जाते हैं। अगर किसी के पास सुझाव दिया गया मामला है तो मैं उसे जोड़ दूंगा।
[4,3] -> 1
[2,2,1] -> 12
[3,1] -> 0
[8,3,2] -> 0
[2,2,1,1]-> 84
[1, 1, 1, 1, 2, 2, 2]
? मुझे ऐसा लगता है।