इस चुनौती में, आपका कार्य निर्देशों के अनुक्रम से एक अप्रत्यक्ष ग्राफ का निर्माण करना है। प्रत्येक nonnegative पूर्णांक के लिए एक निर्देश है, और प्रत्येक दिए गए ग्राफ को एक नए में बदलता है।
- निर्देश
0
: एक नया डिस्कनेक्ट किया गया नोड जोड़ें। - निर्देश
1
: एक नया नोड जोड़ें, और इसे हर मौजूदा नोड से कनेक्ट करें। - निर्देश
m > 1
: सभी नोड्स को हटा दें जिनकी डिग्री (पड़ोसियों की संख्या) द्वारा विभाज्य हैm
। ध्यान दें कि0
सभी द्वारा विभाज्य हैm
, इसलिए डिस्कनेक्ट नोड्स को हमेशा हटा दिया जाता है।
निर्देशों को एक-एक करके लागू किया जाता है, बाएं से दाएं, खाली ग्राफ से शुरू होता है। उदाहरण के लिए, अनुक्रम [0,1,0,1,0,1,3]
को निम्नानुसार संसाधित किया जाता है, भयानक ASCII कला का उपयोग करके समझाया गया है। हम खाली ग्राफ के साथ शुरू करते हैं, और इसके द्वारा निर्देशित के रूप में एक ही शीर्ष जोड़ते हैं 0
:
a
फिर, एक और शीर्ष जोड़ें और इसे पहले से कनेक्ट करें, जैसा कि निर्देशित किया गया है 1
:
a--b
हम एक और डिस्कनेक्ट किए गए वर्टेक्स को जोड़ते हैं और फिर एक कनेक्टेड है, जैसा कि द्वारा निर्देशित 0
और 1
:
a--b c
\ \ /
`--d
हम इसे एक बार फिर से दोहराते हैं, जैसा कि निर्देशित किया गया है 0
और 1
:
,--f--e
/ /|\
a--b | c
\ \|/
`--d
अंत में, हम डिग्री -3 कोने को हटाते हैं a
और b
, जैसा कि निर्देशित किया गया है 3
:
f--e
|\
| c
|/
d
यह अनुक्रम द्वारा परिभाषित ग्राफ है [0,1,0,1,0,1,3]
।
इनपुट
निर्देश के एक अनुक्रम का प्रतिनिधित्व करते हुए nonnegative पूर्णांक की एक सूची।
उत्पादन
अनुक्रम द्वारा परिभाषित ग्राफ में नोड्स की संख्या।
परीक्षण के मामलों
[] -> 0
[5] -> 0
[0,0,0,11] -> 0
[0,1,0,1,0,1,3] -> 4
[0,0,0,1,1,1] -> 6
[0,0,1,1,0,0,1,1,2,5,7,0,1] -> 6
[0,0,1,1,1,1,5,1,4,3,1,0,0,0,1,2] -> 6
[0,0,1,1,0,0,1,1,5,2,3,0,0,1,1,0,0,1,1,3,4,0,0,1,1,2,1,1] -> 8
[0,0,1,1,0,0,1,1,2,5,7,0,1,1,1,1,1,0,1,1,1,1,1,1,1,1,8] -> 14
विस्तृत नियम
आप एक फ़ंक्शन या पूर्ण प्रोग्राम लिख सकते हैं। सबसे छोटा बाइट काउंट जीतता है। मानक खामियों को अस्वीकार कर दिया जाता है। कृपया अपने उत्तर में अपने एल्गोरिथ्म की व्याख्या करें।
एक सप्ताह हो गया है, इसलिए मैंने सबसे छोटा उत्तर स्वीकार कर लिया है। अगर बाद में कोई छोटा भी आता है, तो मैं अपनी पसंद को अपडेट करूंगा। एक सम्मानजनक उल्लेख पीटर टेलर के जवाब पर जाता है , जिस पर विजेता सहित कई अन्य लोग आधारित थे।