पृष्ठभूमि
आप एक कार बिक्री कंपनी के लिए एक प्रोग्रामर के रूप में काम कर रहे हैं। इस सप्ताह के लिए आपका कार्य एक XML पार्सर को प्रोग्राम करना है जो विभिन्न कार निर्माताओं से उपलब्ध मॉडल के बारे में डेटा लेता है, और नवीनतम मॉडल के बारे में सुंदर-प्रिंट जानकारी देता है। आपके लिए सौभाग्य से, परीक्षण विभाग ने केवल एक परीक्षण मामला प्रदान किया है! जितनी तेजी से आप इसे पास करने वाले कोड लिख सकते हैं, उतना ही आपके पास सप्ताह के बाकी समय में शिथिलता के लिए अधिक समय होगा।
इनपुट
आपका इनपुट बिल्कुल XML डेटा का एक टुकड़ा है, जिसे परीक्षण विभाग द्वारा आपूर्ति की जाती है। इसमें कुछ कार निर्माताओं के बारे में डेटा, कारों की उनकी श्रृंखला और इन श्रृंखलाओं में मॉडल शामिल हैं। आप एक अनुगामी न्यूलाइन मान सकते हैं।
<?xml version="1.0" ?>
<products>
<manufacturer name="Test Manufacturer 1">
<series title="Supercar" code="S1">
<model>
<name>Road Czar</name>
<code>C</code>
<year>2011</year>
</model>
<model>
<name>Ubervehicle</name>
<code>U</code>
<year>2013</year>
</model>
<model>
<name>Incredibulus</name>
<code>I</code>
<year>2015</year>
</model>
<model>
<name>Model 1</name>
<code>01</code>
<year>2010</year>
</model>
</series>
<series title="Test series 22" code="Test">
<model>
<name>Test model asdafds</name>
<code>TT</code>
<year>2014</year>
</model>
</series>
</manufacturer>
<manufacturer name="Car Corporation">
<series title="Corporation Car" code="CC">
<model>
<name>First and Only Model</name>
<code>FOM</code>
<year>2012</year>
</model>
</series>
</manufacturer>
<manufacturer name="Second Test Manufacturer">
<series title="AAAAAAAAAAAAAA" code="D">
<model>
<name>Some older model</name>
<code>O</code>
<year>2011</year>
</model>
<model>
<name>The newest model</name>
<code>N</code>
<year>2014</year>
</model>
</series>
<series title="BBBBBBBBBBBBBBB" code="asdf">
<model>
<name>Another newest model here</name>
<code>TT</code>
<year>2015</year>
</model>
</series>
</manufacturer>
</products>
उत्पादन
आपका आउटपुट यह स्ट्रिंग है। यह कार निर्माताओं को वर्णमाला क्रम में सूचीबद्ध करता है, इसके बाद एक बृहदान्त्र और उनके द्वारा बनाई गई श्रृंखला की संख्या। प्रत्येक निर्माता के तहत, यह श्रृंखला के नाम, मॉडल का नाम, और उनके प्रत्येक मॉडल के कोड को सूचीबद्ध करता है, जो नए से शुरू होकर वर्ष तक पिछड़ रहा है। ट्रेलिंग व्हाट्सएप और लाइन ब्रेक स्वीकार्य हैं, जब तक कि प्रिंट होने पर आपका आउटपुट इसके समान दिखता है।
Car Corporation: 1 series
Corporation Car, First and Only Model (CC-FOM)
Second Test Manufacturer: 2 series
BBBBBBBBBBBBBBB, Another newest model here (asdf-TT)
AAAAAAAAAAAAAA, The newest model (D-N)
AAAAAAAAAAAAAA, Some older model (D-O)
Test Manufacturer 1: 2 series
Supercar, Incredibulus (S1-I)
Test series 22, Test model asdafds (Test-TT)
Supercar, Ubervehicle (S1-U)
Supercar, Road Czar (S1-C)
Supercar, Model 1 (S1-01)
नियम और स्कोरिंग
आप एक फ़ंक्शन या पूर्ण प्रोग्राम लिख सकते हैं। सबसे कम बाइट गिनती जीतता है, और मानक खामियों को रोक दिया जाता है।
ध्यान दें कि इनपुट निश्चित है: आपको यहां दिए गए किसी भी अन्य इनपुट का समर्थन करने की आवश्यकता नहीं है। यदि इनपुट को किसी भी तरह से संशोधित किया जाता है, तो आपके प्रोग्राम को बकवास या दुर्घटनाग्रस्त होने की अनुमति दी जाती है। यदि आप चाहें तो इनपुट और हार्ड-कोड आउटपुट को भी अनदेखा कर सकते हैं। हालाँकि, आप XML या HTML पार्सर लाइब्रेरी या बिल्ट-इन का उपयोग नहीं कर सकते हैं ।