만드는 중입니다

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

디지털 디스플레이

시간 제한5초메모리 제한1024 MB

요약
7세그먼트 디스플레이에 표시된 수에서 막대를 최대 K개까지 옮겨 만들 수 있는 가장 작은 더 큰 수를 구합니다. 만들 수 없으면 NO SOLUTION을 출력합니다.
난이도

보통10점 중 6점

유형
그리디, 구현, 문자열
정답자
아직 제출이 없습니다

문제

똑똑한 소년 바샤는 수학을 막 배우기 시작한 학생이다. 오늘은 그의 생일이라 여느 때처럼 많은 손님이 선물을 가져왔다. 가장 친한 친구 바바치카는 특별한 선물로 디지털 디스플레이가 달린 장치를 주었다. 이 장치는 일곱 개의 막대로 이루어진 표시기 NN개로 NN자리 수 XX를 보여 준다.

이 장치는 전자시계와 비슷하지만, 일반적인 형식 대신 어떤 중요한 순간부터 흐른 초 단위로 시간을 보여 준다. 바바치카가 장치를 처음 켰을 때 어떤 중요한 일이 있었는지는 너무 오래전 일이라 그도 기억하지 못한다.

바바치카는 이 시계로 다음 중요한 일이 언제 일어날지 알 수 있다고 바샤에게 말했다. 방법은 지금 디스플레이에 떠 있는 수에서 막대를 최대 KK개까지 옮겨서, 원래 수보다 큰 가장 작은 수를 만드는 것이다. 막대는 한 숫자에서 다른 숫자로 옮겨도 된다. 바바치카는 오래전부터 이 선물을 계획해 왔고, 바샤에게 말할 시점도 이미 계산해 두었다.

바샤는 바바치카만큼 수학을 잘하지 못하므로, 이 질문에 답하는 프로그램을 작성해 달라고 부탁한다.

입력

첫째 줄에 정수 KK (1≤K≤1001 \le K \le 100)가 주어진다. 둘째 줄에 수 XX (0≤X<101000000 \le X < 10^{100000})가 주어진다.

출력

답을 한 줄에 출력한다. 답이 존재하지 않으면 <NO SOLUTION>을 출력한다.

예제2

  1. 예제 1

    입력
    2
    4598
    
    예상 출력
    4600
    
  2. 예제 2

    입력
    3
    888
    
    예상 출력
    NO SOLUTION