कार्यों का सुंदर संगठन
एक तेजी से बढ़ती टेक कंपनी में नए प्रोजेक्ट मैनेजर के रूप में, आपको एक जटिल और विविध कार्यों की सूची को संभालने की जिम्मेदारी सौंपी गई है। लेकिन यह सूची एक साधारण सपाट सूची नहीं है, बल्कि एक पदानुक्रमित सूची है, जहां प्रत्येक कार्य के साथ संभावित रूप से कई उप-कार्य जुड़े हो सकते हैं। कार्य और उप-कार्य एक नेस्टेड सूची में दर्शाए गए हैं जहां प्रत्येक आइटम या तो एकल कार्य है (एक स्ट्रिंग के रूप में) या उप-कार्यों की एक सूची है।
आपकी चुनौती है कि आप एक पुनरावर्ती फ़ंक्शन लिखें जो इस पदानुक्रम में नेविगेट करे और नेस्टेड सूची में दिखाई देने वाले क्रम में सभी कार्यों और उप-कार्यों को प्रिंट करे। पठनीयता और समझ को आसान बनाने के लिए, प्रत्येक उप-कार्य को उसके मूल कार्य से एक टैब अधिक इंडेंट किया जाना चाहिए।
इनपुट n कार्यों और उप-कार्यों की एक नेस्टेड सूची होगी। सूची में प्रत्येक आइटम या तो एक कार्य है (एक स्ट्रिंग के रूप में) या एक अन्य सूची है, जो उप-कार्यों का प्रतिनिधित्व करती है। आप सूची को
eval(input())
या json.loads(...)
का उपयोग करके लोड कर सकते हैं।प्रोग्राम को सभी कार्यों और उप-कार्यों को स्ट्रिंग्स के रूप में, सूची में उनकी उपस्थिति के क्रम में प्रिंट करना चाहिए। प्रत्येक उप-कार्य को उसके मूल कार्य से एक टैब अधिक इंडेंट किया जाना चाहिए।
इनपुट | आउटपुट |
["Task 1", ["Subtask 1.1", "Subtask 1.2", ["Subtask 1.2.1", "Subtask 1.2.2"], "Subtask 1.3"], "Task 2", ["Subtask 2.1"]] | Task 1
Subtask 1.1
Subtask 1.2
Subtask 1.2.1
Subtask 1.2.2
Subtask 1.3
Task 2
Subtask 2.1 |
नोट: आउटपुट में, प्रत्येक टैब को
\t
कैरेक्टर के रूप में दर्शाया गया है। साथ ही, आउटपुट में कार्यों और उप-कार्यों का क्रम इनपुट नेस्टेड सूची के क्रम का पालन करना चाहिए।Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB