링크 줄이기
시간 제한2초메모리 제한1024 MB
글자 수 제한 l과 메시지가 주어질 때, 메시지의 http:// 링크를 왼쪽부터 차례로 앞부분과 "..."으로 줄여 제한 안에 맞춥니다.
문제
Vasya는 자신만의 소셜 네트워크를 만들기로 했다. 누구나 다른 사용자에게 메시지를 쓸 수 있지만, 메시지는 최대 자까지만 쓸 수 있다. 글자 수 제한은 날마다 바뀐다.
Vasya는 사이트를 완성해서 친구 Petya에게 보여주었다. Petya는 메시지에 정보를 더 담을 수 있도록 링크를 줄이자고 제안했다. Vasya가 링크 압축 기능을 구현하도록 도와라.
링크는 http://로 시작하고, 그 뒤에 소문자 영문자, 숫자, /, :, . 기호가 이어지는 문자열이다. http:// 뒤에는 최소 한 글자가 있어야 한다. 링크 앞에는 공백이나 줄의 시작이 오고, 링크 뒤에는 공백이나 줄의 끝이 온다.
줄인 링크는 원래 링크의 앞부분(0글자 이상)에 점 세 개 ...를 붙인 것이다. 앞부분은 가능한 한 길게 남긴다. 링크는 왼쪽부터 차례로 처리한다. 각 링크는 메시지가 자 이내가 되는 데 필요한 만큼만 줄인다. ...까지 줄여도 메시지가 여전히 넘치면 그 링크는 ...로 두고 다음 링크로 넘어간다.
예를 들어 http://pda.lenta.ru/news/2012/01/09/sudoku/는 http://pda.lenta.ru/news/2012/01/0...나 ...로 줄일 수 있다.
입력
첫 번째 줄에 메시지 길이의 상한 이 주어진다 (). 두 번째 줄에 메시지 가 주어진다. 메시지는 비어 있지 않고, 최대 10000자이며, 메시지에 포함되지 않는 줄바꿈 문자로 끝난다. 메시지에는 링크가 하나 이상 있다.
출력
첫 번째 줄에 압축된 메시지를 출력한다. 두 번째 줄에는 압축된 메시지가 상한 안에 들어가면 0을, 그렇지 않으면 상한을 초과한 글자 수를 출력한다.