시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 128 MB135774455255.701%

문제

갑자기 맥북이 상근이의 손에서 떨어졌고, 화면이 켜지지 않았다. AS센터에 문의해보니 수리비가 97만원이 나왔고, 상근이는 큰 혼란에 빠졌다. 돈도 중요하지만, 상근이는 그 속에 들어있는 파일이 걱정되기 시작했다. 다행히 상근이는 저장되어 있는 중요한 디렉토리의 전체 경로를 텍스트 파일로 따로 저장하고 있었다. 예를 들면, WINNT\SYSTEM32\CERTSRV\CERTCO~1\X86. 

상근이의 중요한 디렉토리의 전체 경로가 모두 주어졌을 때, 디렉토리 구조를 구해 보기 좋게 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 중요한 디렉토리 전체 경로의 개수 N(1 ≤ N ≤ 500)이 주어진다. 다음 N개 줄에는 디렉토리 경로가 주어진다. 경로는 한 줄로 이루어져 있으며, 공백을 포함하지 않는다. 경로는 80글자를 넘지 않으며, 디렉토리는 역슬래시(\)로 구분된다.

각 디렉토리의 이름은 1~8글자이며, 알파벳 대문자, 숫자, 특수 문자로 이루어져 있다. 디렉토리 이름에 들어있을 수 있는 특수문자는 !#\$%&'()-@^_`{}~ 이다.

출력

디렉토리 구조를 보기 좋게 출력한다. 한 줄에 하나씩 디렉토리의 이름을 출력하며, 공백은 디렉토리 구조상에서 깊이를 의미한다. 각 서브 디렉토리는 사전순으로 출력해야 하며, 부모 디렉토리에서 출력한 공백의 개수보다 1개 많게 공백을 출력한다. 예제 출력을 보면서 형식을 참고하는 것이 좋다.

예제 입력 1

7
WINNT\SYSTEM32\CONFIG
GAMES
WINNT\DRIVERS
HOME
WIN\SOFT
GAMES\DRIVERS
WINNT\SYSTEM32\CERTSRV\CERTCO~1\X86

예제 출력 1

GAMES
 DRIVERS
HOME
WIN
 SOFT
WINNT
 DRIVERS
 SYSTEM32
  CERTSRV
   CERTCO~1
    X86
  CONFIG

힌트

문제 설명은 실화를 바탕으로 재해석되었으며, 다음날 자고 일어나보니 맥북이 켜졌다고 합니다.

W3sicHJvYmxlbV9pZCI6Ijc0MzIiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWI1MTRcdWMyYTRcdWQwNmMgXHVkMmI4XHViOWFjIiwiZGVzY3JpcHRpb24iOiI8cD5cdWFjMTFcdWM3OTBcdWFlMzAgXHViOWU1XHViZDgxXHVjNzc0IFx1YzBjMVx1YWRmY1x1Yzc3NFx1Yzc1OCBcdWMxOTBcdWM1ZDBcdWMxMWMgXHViNWE4XHVjNWI0XHVjODRjXHVhY2UwLCBcdWQ2NTRcdWJhNzRcdWM3NzQgXHVjZjFjXHVjOWMwXHVjOWMwIFx1YzU0YVx1YzU1OFx1YjJlNC4gQVNcdWMxM2NcdWQxMzBcdWM1ZDAgXHViYjM4XHVjNzU4XHVkNTc0XHViY2Y0XHViMmM4IFx1YzIxOFx1YjlhY1x1YmU0NFx1YWMwMCA5N1x1YjljY1x1YzZkMFx1Yzc3NCBcdWIwOThcdWM2NTRcdWFjZTAsIFx1YzBjMVx1YWRmY1x1Yzc3NFx1YjI5NCBcdWQwNzAgXHVkNjNjXHViNzgwXHVjNWQwIFx1YmU2MFx1Yzg0Y1x1YjJlNC4gXHViM2M4XHViM2M0IFx1YzkxMVx1YzY5NFx1ZDU1OFx1YzljMFx1YjljYywgXHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IFx1YWRmOCBcdWMxOGRcdWM1ZDAgXHViNGU0XHVjNWI0XHVjNzg4XHViMjk0IFx1ZDMwY1x1Yzc3Y1x1Yzc3NCBcdWFjNzFcdWM4MTVcdWI0MThcdWFlMzAgXHVjMmRjXHVjNzkxXHVkNTg4XHViMmU0LiBcdWIyZTRcdWQ1ODlcdWQ3ODggXHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IFx1YzgwMFx1YzdhNVx1YjQxOFx1YzViNCBcdWM3ODhcdWIyOTQgXHVjOTExXHVjNjk0XHVkNTVjIFx1YjUxNFx1YjgwOVx1ZDFhMFx1YjlhY1x1Yzc1OCBcdWM4MDRcdWNjYjQgXHVhY2JkXHViODVjXHViOTdjIFx1ZDE0ZFx1YzJhNFx1ZDJiOCBcdWQzMGNcdWM3N2NcdWI4NWMgXHViNTMwXHViODVjIFx1YzgwMFx1YzdhNVx1ZDU1OFx1YWNlMCBcdWM3ODhcdWM1YzhcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWJhNzQsIFdJTk5UXFxTWVNURU0zMlxcQ0VSVFNSVlxcQ0VSVENPfjFcXFg4Ni4mbmJzcDs8XC9wPlxyXG5cclxuPHA+XHVjMGMxXHVhZGZjXHVjNzc0XHVjNzU4IFx1YzkxMVx1YzY5NFx1ZDU1YyBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWM3NTggXHVjODA0XHVjY2I0IFx1YWNiZFx1Yjg1Y1x1YWMwMCBcdWJhYThcdWI0NTAgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHViNTE0XHViODA5XHVkMWEwXHViOWFjIFx1YWQ2Y1x1Yzg3MFx1Yjk3YyBcdWFkNmNcdWQ1NzQgXHViY2Y0XHVhZTMwIFx1Yzg4Ylx1YWM4YyBcdWNkOWNcdWI4MjVcdWQ1NThcdWIyOTQgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQ0IFx1Yzc5MVx1YzEzMVx1ZDU1OFx1YzJkY1x1YzYyNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYlx1YzlmOCBcdWM5MDRcdWM1ZDAgXHVjOTExXHVjNjk0XHVkNTVjIFx1YjUxNFx1YjgwOVx1ZDFhMFx1YjlhYyBcdWM4MDRcdWNjYjQgXHVhY2JkXHViODVjXHVjNzU4IFx1YWMxY1x1YzIxOCBOKDEgJmxlOyBOICZsZTsgNTAwKVx1Yzc3NCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YjJlNFx1Yzc0YyBOXHVhYzFjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWMgXHVhY2JkXHViODVjXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gXHVhY2JkXHViODVjXHViMjk0IFx1ZDU1YyBcdWM5MDRcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YzczY1x1YmE3MCwgXHVhY2Y1XHViYzMxXHVjNzQ0IFx1ZDNlY1x1ZDU2OFx1ZDU1OFx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuIFx1YWNiZFx1Yjg1Y1x1YjI5NCA4MFx1YWUwMFx1Yzc5MFx1Yjk3YyBcdWIxMThcdWM5YzAgXHVjNTRhXHVjNzNjXHViYTcwLCBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWIyOTQgXHVjNWVkXHVjMmFjXHViNzk4XHVjMmRjKFxcKVx1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YWMwMSBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWM3NTggXHVjNzc0XHViOTg0XHVjNzQwIDF+OFx1YWUwMFx1Yzc5MFx1Yzc3NFx1YmE3MCwgXHVjNTRjXHVkMzBjXHViY2IzIFx1YjMwMFx1YmIzOFx1Yzc5MCwgXHVjMjJiXHVjNzkwLCBcdWQyYjlcdWMyMTggXHViYjM4XHVjNzkwXHViODVjIFx1Yzc3NFx1YjhlOFx1YzViNFx1YzgzOCBcdWM3ODhcdWIyZTQuIFx1YjUxNFx1YjgwOVx1ZDFhMFx1YjlhYyBcdWM3NzRcdWI5ODRcdWM1ZDAgXHViNGU0XHVjNWI0XHVjNzg4XHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVkMmI5XHVjMjE4XHViYjM4XHVjNzkwXHViMjk0ICEjXFwkJSZhbXA7JiMzOTsoKS1AXl9ge31+IFx1Yzc3NFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWMgXHVhZDZjXHVjODcwXHViOTdjIFx1YmNmNFx1YWUzMCBcdWM4OGJcdWFjOGMgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LiBcdWQ1NWMgXHVjOTA0XHVjNWQwIFx1ZDU1OFx1YjA5OFx1YzUyOSBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWM3NTggXHVjNzc0XHViOTg0XHVjNzQ0IFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1YmE3MCwgXHVhY2Y1XHViYzMxXHVjNzQwIFx1YjUxNFx1YjgwOVx1ZDFhMFx1YjlhYyBcdWFkNmNcdWM4NzBcdWMwYzFcdWM1ZDBcdWMxMWMgXHVhZTRhXHVjNzc0XHViOTdjIFx1Yzc1OFx1YmJmOFx1ZDU1Y1x1YjJlNC4gXHVhYzAxIFx1YzExY1x1YmUwYyBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWIyOTQgXHVjMGFjXHVjODA0XHVjMjFjXHVjNzNjXHViODVjIFx1Y2Q5Y1x1YjgyNVx1ZDU3NFx1YzU3YyBcdWQ1NThcdWJhNzAsIFx1YmQ4MFx1YmFhOCBcdWI1MTRcdWI4MDlcdWQxYTBcdWI5YWNcdWM1ZDBcdWMxMWMgXHVjZDljXHViODI1XHVkNTVjIFx1YWNmNVx1YmMzMVx1Yzc1OCBcdWFjMWNcdWMyMThcdWJjZjRcdWIyZTQgMVx1YWMxYyBcdWI5Y2VcdWFjOGMgXHVhY2Y1XHViYzMxXHVjNzQ0IFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gXHVjNjA4XHVjODFjIFx1Y2Q5Y1x1YjgyNVx1Yzc0NCBcdWJjZjRcdWJhNzRcdWMxMWMgXHVkNjE1XHVjMmRkXHVjNzQ0IFx1Y2MzOFx1YWNlMFx1ZDU1OFx1YjI5NCBcdWFjODNcdWM3NzQgXHVjODhiXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiI8cD5cdWJiMzhcdWM4MWMgXHVjMTI0XHViYTg1XHVjNzQwIFx1YzJlNFx1ZDY1NFx1Yjk3YyBcdWJjMTRcdWQwZDVcdWM3M2NcdWI4NWMgXHVjN2FjXHVkNTc0XHVjMTFkXHViNDE4XHVjNWM4XHVjNzNjXHViYTcwLCBcdWIyZTRcdWM3NGNcdWIwYTAgXHVjNzkwXHVhY2UwIFx1Yzc3Y1x1YzViNFx1YjA5OFx1YmNmNFx1YjJjOCBcdWI5ZTVcdWJkODFcdWM3NzQgXHVjZjFjXHVjODRjXHViMmU0XHVhY2UwIFx1ZDU2OVx1YjJjOFx1YjJlNC48XC9wPlxyXG4iLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6Ijc0MzIiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJEaXNrIFRyZWUiLCJkZXNjcmlwdGlvbiI6IjxwPkhhY2tlciBCaWxsIGhhcyBhY2NpZGVudGFsbHkgbG9zdCBhbGwgdGhlIGluZm9ybWF0aW9uIGZyb20gaGlzIHdvcmtzdGF0aW9uJiMzOTtzIGhhcmQgZHJpdmUgYW5kIGhlIGhhcyBubyBiYWNrdXAgY29waWVzIG9mIGl0cyBjb250ZW50cy4gSGUgZG9lcyBub3QgcmVncmV0IGZvciB0aGUgbG9zcyBvZiB0aGUgZmlsZXMgdGhlbXNlbHZlcywgYnV0IGZvciB0aGUgdmVyeSBuaWNlIGFuZCBjb252ZW5pZW50IGRpcmVjdG9yeSBzdHJ1Y3R1cmUgdGhhdCBoZSBoYWQgY3JlYXRlZCBhbmQgY2hlcmlzaGVkIGR1cmluZyB5ZWFycyBvZiB3b3JrLiBGb3J0dW5hdGVseSwgQmlsbCBoYXMgc2V2ZXJhbCBjb3BpZXMgb2YgZGlyZWN0b3J5IGxpc3RpbmdzIGZyb20gaGlzIGhhcmQgZHJpdmUuIFVzaW5nIHRob3NlIGxpc3RpbmdzIGhlIHdhcyBhYmxlIHRvIHJlY292ZXIgZnVsbCBwYXRocyAobGlrZSAmcXVvdDtXSU5OVFxcU1lTVEVNMzJcXENFUlRTUlZcXENFUlRDT34xXFxYODYmcXVvdDspIGZvciBzb21lIGRpcmVjdG9yaWVzLiBIZSBwdXQgYWxsIG9mIHRoZW0gaW4gYSBmaWxlIGJ5IHdyaXRpbmcgZWFjaCBwYXRoIGhlIGhhcyBmb3VuZCBvbiBhIHNlcGFyYXRlIGxpbmUuIFlvdXIgdGFzayBpcyB0byB3cml0ZSBhIHByb2dyYW0gdGhhdCB3aWxsIGhlbHAgQmlsbCB0byByZXN0b3JlIGhpcyBzdGF0ZSBvZiB0aGUgYXJ0IGRpcmVjdG9yeSBzdHJ1Y3R1cmUgYnkgcHJvdmlkaW5nIG5pY2VseSBmb3JtYXR0ZWQgZGlyZWN0b3J5IHRyZWUuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgZmlyc3QgbGluZSBvZiB0aGUgaW5wdXQgZmlsZSBjb250YWlucyBzaW5nbGUgaW50ZWdlciBudW1iZXIgTiAoMSAmbGU7IE4gJmxlOyA1MDApIHRoYXQgZGVub3RlcyBhIHRvdGFsIG51bWJlciBvZiBkaXN0aW5jdCBkaXJlY3RvcnkgcGF0aHMuIFRoZW4gTiBsaW5lcyB3aXRoIGRpcmVjdG9yeSBwYXRocyBmb2xsb3cuIEVhY2ggZGlyZWN0b3J5IHBhdGggb2NjdXBpZXMgYSBzaW5nbGUgbGluZSBhbmQgZG9lcyBub3QgY29udGFpbiBhbnkgc3BhY2VzLCBpbmNsdWRpbmcgbGVhZGluZyBvciB0cmFpbGluZyBvbmVzLiBObyBwYXRoIGV4Y2VlZHMgODAgY2hhcmFjdGVycy4gRWFjaCBwYXRoIGlzIGxpc3RlZCBvbmNlIGFuZCBjb25zaXN0cyBvZiBhIG51bWJlciBvZiBkaXJlY3RvcnkgbmFtZXMgc2VwYXJhdGVkIGJ5IGEgYmFjayBzbGFzaCAoJnF1b3Q7XFwmcXVvdDspLjxcL3A+XHJcblxyXG48cD5FYWNoIGRpcmVjdG9yeSBuYW1lIGNvbnNpc3RzIG9mIDEgdG8gOCB1cHBlcmNhc2UgbGV0dGVycywgbnVtYmVycywgb3IgdGhlIHNwZWNpYWwgY2hhcmFjdGVycyBmcm9tIHRoZSBmb2xsb3dpbmcgbGlzdDogZXhjbGFtYXRpb24gbWFyaywgbnVtYmVyIHNpZ24sIGRvbGxhciBzaWduLCBwZXJjZW50IHNpZ24sIGFtcGVyc2FuZCwgYXBvc3Ryb3BoZSwgb3BlbmluZyBhbmQgY2xvc2luZyBwYXJlbnRoZXNpcywgaHlwaGVuIHNpZ24sIGNvbW1lcmNpYWwgYXQsIGNpcmN1bWZsZXggYWNjZW50LCB1bmRlcnNjb3JlLCBncmF2ZSBhY2NlbnQsIG9wZW5pbmcgYW5kIGNsb3NpbmcgY3VybHkgYnJhY2tldCwgYW5kIHRpbGRlICgmcXVvdDshI1xcJCUmYW1wOyYjMzk7KCktQF5fYHt9fiZxdW90OykuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+V3JpdGUgdG8gdGhlIG91dHB1dCBmaWxlIHRoZSBmb3JtYXR0ZWQgZGlyZWN0b3J5IHRyZWUuIEVhY2ggZGlyZWN0b3J5IG5hbWUgc2hhbGwgYmUgbGlzdGVkIG9uIGl0cyBvd24gbGluZSBwcmVjZWRlZCBieSBhIG51bWJlciBvZiBzcGFjZXMgdGhhdCBpbmRpY2F0ZSBpdHMgZGVwdGggaW4gdGhlIGRpcmVjdG9yeSBoaWVyYXJjaHkuIFRoZSBzdWJkaXJlY3RvcmllcyBzaGFsbCBiZSBsaXN0ZWQgaW4gbGV4aWNvZ3JhcGhpYyBvcmRlciBpbW1lZGlhdGVseSBhZnRlciB0aGVpciBwYXJlbnQgZGlyZWN0b3JpZXMgcHJlY2VkZWQgYnkgb25lIG1vcmUgc3BhY2UgdGhhbiB0aGVpciBwYXJlbnQgZGlyZWN0b3J5LiBUb3AgbGV2ZWwgZGlyZWN0b3JpZXMgc2hhbGwgaGF2ZSBubyBzcGFjZXMgcHJpbnRlZCBiZWZvcmUgdGhlaXIgbmFtZXMgYW5kIHNoYWxsIGJlIGxpc3RlZCBpbiBsZXhpY29ncmFwaGljIG9yZGVyLiBTZWUgc2FtcGxlIGJlbG93IGZvciBjbGFyaWZpY2F0aW9uIG9mIHRoZSBvdXRwdXQgZm9ybWF0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=

출처

ICPC > Regionals > Northern Eurasia > Northern Eurasia Finals > NEERC 2000 H번