임의의, 문법적으로 올바른 파스칼(Pascal) 프로그램이 주어진다. 이 프로그램을 압축하라. (이 문제를 풀기 위해 파스칼 언어를 알 필요는 없다. 필요한 정보는 모두 아래에 주어진다.) 다음 규칙에 따라 프로그램을 압축한다.
')로 둘러싸인다. 문자열 안에서 작은따옴표 두 개가 연속으로 나오면 이는 작은따옴표 한 개를 나타낸다. 예를 들면 다음과 같다.
'This is a string'
'isn''t this fun?'
문자열은 줄 경계를 넘을 수 없다.(* ... *) 또는 { ... }로 둘러싸인다. 예를 들면 다음과 같다.
(* This is a comment! *)
{ A comment with a '*)'. }
(* A (* comment *)
주석은 여러 줄에 걸칠 수 있다. 주석은 중첩될 수 없다.문법적으로 올바른 파스칼 프로그램 하나가 표준 입력으로 주어진다. 입력에는 탭 문자나 그 밖의 출력 불가능한 문자가 없으며(줄 구분 문자는 예외), 어떤 줄도 255자보다 길지 않다.
위 규칙을 적용하여 얻은, 압축된 파스칼 프로그램을 출력한다. 그 외에는 아무것도 출력하지 않는다.