탐사

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

문제

직선 도로 어딘가에 특별한 물체 여러 개가 묻혀 있다. 직선 도로를 길이 KK의 일차원 배열로 생각하자. 각 단위 구간에는 물체가 하나 있거나(#) 없다(-). 아래 그림에서 숫자는 단위 구간의 번호이고, ▲ 표시가 있는 칸에 물체가 있다.

123456789101112

그림 1

우리는 연속한 구간에 들어 있는 물체의 개수를 질의 Probe[x, y]로 확인할 수 있다. 구간 xx부터 yy까지에 물체가 rr개 있으면 Probe[x, y] = r로 나타낸다(단 xyx \le y). 예를 들어 그림 1에서는 Probe[2, 7] = 3, Probe[2, 2] = 0, Probe[6, 9] = 4, Probe[5, 12] = 5이다.

주어진 모든 탐사 결과를 동시에 만족하는 도로의 물체 배치를 복원하는 프로그램을 작성하라.

입력

첫 줄에 두 정수 KKNN이 주어진다. KK는 전체 구간의 길이, NN은 탐사 결과의 개수이다. 이어지는 NN개의 줄에는 각각 하나의 탐사 결과가 공백으로 구분된 세 정수 xx yy rr로 주어지며, 이는 Probe[x, y] = r를 뜻한다.

제한: 3K403 \le K \le 40, 2N10002 \le N \le 1000, 1xyK1 \le x \le y \le K, 0r10000 \le r \le 1000.

출력

모든 탐사 결과를 만족하는 배치를 길이 KK의 문자열로 출력한다. 물체가 있는 칸은 #, 없는 칸은 -로 표시한다. 조건을 만족하는 배치가 여러 개이면 그중 사전순으로 가장 앞서는 문자열을 출력한다(문자 단위로 비교하며, #-보다 앞선다). 모든 탐사 결과를 만족하는 배치가 존재하지 않으면 NONE을 출력한다.