소개
이 문제는 제거 가장 많은 찾는 구성 Y 원래 번호에서 숫자를 N 이 X 자리.
가정 y=2 n=5263 x=4
, 제거 가능한 번호 Y = 2 진수이다 :
[52, 56, 53, 26, 23, 63]
따라서 가장 큰 숫자는 63
이 예제의 출력이어야합니다.
또 다른 논리는 다음과 같습니다. 각 y에 대해 오른쪽에서 다음 숫자가 큰 숫자를 왼쪽에서 오른쪽으로 검색 한 다음 제거하고, 일치하지 않으면 마지막 y 숫자를 제거합니다 .
y=3 n=76751432 x=8
설명하는 데 사용 :
y=3
76751432
-^------ remove 6 because right next 7 is greater
y=2
7751432
---^--- remove 1 because right next 4 is greater
y=1
775432
-----^ the search failed, then remove last y digits
result = 77543
위에서 설명한 두 가지 방법 모두 작동합니다. 물론 다른 방법도 사용할 수 있습니다. :)
도전
숫자 n 은 8 자리를 초과하지 않으며 y 는 항상 0보다 크고 x 보다 작습니다 .
엄격한 입력 형식을 피하기 위해 y n x
원하는 방식 : 값 을 함수의 매개 변수, 원시 입력 또는 기타 유효한 방법으로 사용할 수 있습니다. 답변에서 어떻게했는지 말하십시오.
결과는 결과 번호 여야합니다.
이것은 code-golf 이며 바이트 단위로 가장 짧은 답변입니다.
입력 및 출력 예
다시 : 너무 엄격 할 필요는 없습니다. :)
4 1789823 7 -> 983
1 54132 5 -> 5432
3 69314 5 -> 94
2 51794 5 -> 794
편집하다
일부 사용자는 문제를 해결하기 위해 x 값이 필요하지 않을 수도 있다는 사실을 반영하여 입력 순서를 변경했습니다 . x 는 이제 선택적 값입니다.
x
쓸모없는 정보 라고 생각하면 됩니다.
x
입력으로 코드를 줄일 수 있다고 생각합니다 . (예시 : 나의 Julia 답변)