만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

HTML

면접 대비

시간 제한1초메모리 제한128 MB

요약
일반 텍스트와 <br>, <hr> 태그로 이루어진 HTML 문서를 80자에서 줄바꿈하며 렌더링한다.
난이도

쉬움10점 중 3점

유형
문자열, 구현, 시뮬레이션, 완전 탐색
정답자
아직 제출이 없습니다

문제

<br>와 <hr> 태그, 그리고 평문(일반 텍스트)으로만 이루어진 HTML 문서가 주어진다. 이 문서를 아래 규칙에 따라 화면에 출력한 결과를 만들어 내는 프로그램을 작성하시오.

출력되는 모든 줄의 길이는 80글자를 넘을 수 없다.

입력

입력으로 원본 HTML 문서가 주어진다. 문서는 단어와 HTML 태그로 이루어져 있으며, 각 토큰(단어 또는 태그)은 하나 이상의 공백, 탭, 개행 문자로 구분된다.

  • 단어는 연속된 알파벳, 숫자, 문장 부호의 나열이다. 예를 들어 abc,123은 한 개의 단어이지만, abc, 123은 abc,와 123의 두 개의 단어이다.
  • 단어의 길이는 항상 80글자 이하이며, <나 > 문자를 포함하지 않는다.
  • 입력에 등장하는 태그는 <br>와 <hr> 뿐이다.

출력

다음 규칙에 따라 결과를 출력한다.

  • 다음 단어를 현재 줄에 이어 출력해도 줄 길이가 80글자를 넘지 않으면, 그 단어를 현재 줄에 출력한다. 이때 바로 앞 단어와의 사이에는 공백 한 칸을 둔다. 만약 80글자를 넘게 된다면, 그 단어는 새로운 줄에 출력한다.
  • <br> 태그를 만나면 현재 줄을 끝내고 새 줄을 시작한다.
  • <hr> 태그를 만나면, 현재 줄이 비어 있지 않은 경우 먼저 줄을 바꾼 뒤, - 문자를 한 줄에 정확히 80개 출력한다. 그 다음 다시 새 줄을 시작한다.
  • 마지막 줄은 개행 문자로 끝난다.
  • 연속된 여러 개의 공백, 탭, 개행 문자는 하나의 공백으로 취급한다.

예제3

  1. 예제 1

    입력
    Hallo, dies ist eine 
    ziemlich lange Zeile, die in Html
    aber nicht umgebrochen wird.
    <br>
    Zwei <br> <br> produzieren zwei Newlines. 
    Es gibt auch noch das tag <hr> was einen Trenner darstellt.
    Zwei <hr> <hr> produzieren zwei Horizontal Rulers.
    Achtung       mehrere Leerzeichen irritieren
    
    Html genauso wenig wie
    
    
    mehrere Leerzeilen.
    
    예상 출력
    Hallo, dies ist eine ziemlich lange Zeile, die in Html aber nicht umgebrochen
    wird.
    Zwei
    
    produzieren zwei Newlines. Es gibt auch noch das tag
    --------------------------------------------------------------------------------
    was einen Trenner darstellt. Zwei
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------
    produzieren zwei Horizontal Rulers. Achtung mehrere Leerzeichen irritieren Html
    genauso wenig wie mehrere Leerzeilen.
    
  2. 예제 2

    입력
    Hello world
    
    예상 출력
    Hello world
    
  3. 예제 3

    입력
    a <br> <br> b
    
    예상 출력
    a
    
    b