BFed

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

이 문제에서는 아주 단순한 프로그래밍 언어의 인터프리터를 작성합니다. 이 언어에는 원래 이름이 있지만, 여러 사정상 여기서는 BF라고 부르겠습니다.

BF 프로그램은 단순한 $1$차원 메모리 셀 배열 위에서 동작하며, "현재" 셀을 가리키는 포인터가 하나 있습니다. 표준(vanilla) BF에서 이 배열의 크기는 $30,000$이고, 각 셀은 $8$비트 정수입니다. 즉, 셀은 $0$부터 $255$까지의 값을 저장합니다. 값이 $255$인 셀을 증가시키면 $0$으로 순환하고, 값이 $0$인 셀을 감소시키면 $255$로 순환합니다. 모든 셀은 처음에 $0$으로 초기화되며, 포인터는 처음에 가장 왼쪽 셀을 가리킵니다.

BF 프로그램은 하나의 문자열입니다. 각 문자는 다음 $8$개의 "명령" 중 하나일 수 있습니다.

명령설명
>포인터를 오른쪽으로 한 칸 옮긴다
<포인터를 왼쪽으로 한 칸 옮긴다
+현재 셀의 값을 $1$ 증가시킨다
-현재 셀의 값을 $1$ 감소시킨다
[현재 셀의 값이 $0$이면 짝이 맞는 ] 다음으로 건너뛴다
]현재 셀의 값이 $0$이 아니면 짝이 맞는 [로 되돌아간다
.현재 셀의 값을 문자로 출력한다
,문자 하나를 입력받아 현재 셀에 저장한다

, 명령은 구현하지 않아도 됩니다.

위에 나열된 처음 $7$개의 명령을 제외한 BF 프로그램의 모든 문자는 무시해야 합니다. 프로그램은 처리할 문자가 더 이상 없을 때 종료됩니다.

흥미롭게도, 이 명령들은 (충분한 메모리와 시간, 그리고 인내심이 있다면) 다른 어떤 프로그래밍 언어로도 할 수 있는 모든 계산을 BF 프로그램으로 수행할 수 있을 만큼 강력합니다.

입력

인터프리터는 표준 입력으로 BF 프로그램을 받습니다. 프로그램은 여러 줄에 걸쳐 있을 수 있습니다. 프로그램은 해시 기호 #로 종료됩니다.

인터프리터에는 유효하지 않은 프로그램, 비정상적으로 오래 실행되는(혹은 무한히 실행되는) 프로그램, 배열의 왼쪽이나 오른쪽 끝을 벗어나 오류를 일으키는 프로그램은 주어지지 않는다고 가정해도 됩니다. 어떤 입력도 $10,000$자를 넘지 않습니다.

출력

BF 프로그램을 실행한 결과 출력을 그대로 출력하세요. 프로그램이 만들어 낸 문자 외에는 아무 것도 출력하지 마세요.