Ռուբենը պատահաբար կորցրել է իր աշխատանքային կայանի կոշտ սկավառակի ողջ տեղեկությունը, այդ թվում նաև տարիների ընթացքում ստեղծած թղթապանակների կառուցվածքը։ Թեև նրան հաճախորդ ֆայլերը չեն հետաքրքրում, սակայն թղթապանակների կառուցվածքը հետաքրքրում է, և նա ցանկանում է վերականգնել այն։ Բարեբախտաբար, Ռուբենը պահպանել է մի քանի տարբեր օրինակներ իր կոշտ սկավառակից ստացված թղթապանակների ցանկերից, որոնք պարունակում են որոշ թղթապանակների լրիվ ուղիները։
Ձեր խնդիրը Բիլին օգնելն է, որպեսզի նա վերականգնի այդ թղթապանակների կառուցվածքը, ներկայացնելով դրանք գեղեցիկ ձևավորված թղթապանակների ծառի տեսքով։
Մուտք
Մուտքի առաջին տողում տրված է մեկ ամբողջ թիվ n, որը ցույց է տալիս տարբեր թղթապանակների ուղիների ընդհանուր թիվը (1 ≤ n ≤ 500):
Հաջորդ n տողերում գտնվում են թղթապանակների ուղիները (մեկ հատ յուրաքանչյուր տողում)։ Ամեն ուղի չի պարունակում ոչ բացատներ սկզբում կամ վերջում և ունի առավելագույնը 80 կանապետ (characters)։ Թղթապանակների անունները տվյալ ուղում բաժանված են հակադարձ շեղագծով (/)։
Յուրաքանչյուր թղթապանակի անունը կարող է կազմված լինել 1-ից 8 μεγատառերից, թվերից կամ ստորև նշված հատուկ նշաններից՝ բացականչական նշան, համարանիշ, դոլարանիշ, տոկոսանիշ, ամպերսանդ, ապաթրոֆ, բացվող ու փակվող փակագծեր, գծիկ, շնիկ (commercial at), circumflex accent, անդրորդ, grave accent, բացվող ու փակվող фигурные скобки, և тилդա (!#$%&'()-@^_{}~):
Ելք
Յուրաքանչյուր թղթապանակի անուն պետք է տպվի առանձին տողով, որի սկզբում դրված բացատների քանակը ցույց է տալիս տվյալ թղթապանակի խորությունը ծառի մեջ։
Երեքորդ մակարդակի (ավելի ստույգ՝ «դուստր») թղթապանակները պետք է տպվեն անմիջապես իրենց «ծնող» թղթապանակից հետո և մեկ բացատով ավելի ներս անում (indent):
Գլխավոր (top-level) թղթապանակների անվանման սկզբում բացատներ չպետք է ունենալ։
Բոլոր թղթապանակները պետք է տպվեն բառարանային (lexicographic) հերթականությամբ։
Օրինակներ
Մուտք
Ելք
7
WINNT/SYSTEM32/CONFIG
GAMES
WINNT/DRIVERS
HOME
WIN/SOFT
GAMES/DRIVERS
WINNT/SYSTEM32/CERTSRV/CERTCO~1/X8O~1\X86
GAMES
DRIVERS
HOME
WIN
SOFT
WINNT
DRIVERS
SYSTEM32
CERTSRV
CERTCO~1
X86
CONFIG