Фон
Ви працюєте програмістом компанії з продажу автомобілів. Ваше завдання на цей тиждень - запрограмувати 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-парсера або вбудовані модулі.