พื้นหลัง
คุณกำลังทำงานเป็นโปรแกรมเมอร์ให้กับ บริษัท ขายรถยนต์ งานของคุณในสัปดาห์นี้คือการเขียนโปรแกรมตัวแยกวิเคราะห์ 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 หรือบิวด์อินได้