소개:
: 나는 두 개의 무지개 관련 문제에 게시 한 후 Codegolf 레인보우 : 정수 배열 재미 (1) 및 Codegolf 무지개 : 블랙 앤 화이트에 그리기 2 , 다음 주석에 의해 만들어진 @ChrisM 아스키에 ( 블랙 앤 화이트에 그리기 ) 도전 :
어쩌면 당신은 이것을 알고 있으며 의도적으로 설계된 것입니다 (무지개는 마름모 또는 아스키가 아니며 높은 주문 위치는 더 복잡하다는 것을 알고 있습니다).하지만 두 번째 무지개의 색상이 반전되지 않습니까?
그리고 그는 정말로 옳습니다. 이중 무지개를 볼 때 두 번째 무지개는 실제로 첫 번째 무지개를 반영하므로 색상이 반전됩니다. 세 개의 무지개는 실제 이중 무지개이며 세 번째는 다른 두 개의 무지개 중 하나입니다. 그리고 4 개에는 2 개의 무지개와 2 개의 반사가 있습니다.
자, 그 사실을 이용하여 세 번째 관련 도전을하겠습니다.
도전:
입력 : 양의 정수 n
이고 >=2
, 크기의 정수의 목록 >= n+1
.
출력 : 다음과 같은 순서로 정렬됩니다.
- 먼저 입력 목록을 크기의 하위 목록으로 나누십시오
n
(후행 하위 목록은 범위 내에서 임의의 크기 일 수 있음[1,n]
). - 그런 다음 하위 목록의 양에 따라 다음을 수행합니다
m
.m - m//2
하위 목록 의 첫 번째 양을 가장 낮은 것에서 가장 높은 것 (//
정수 나누기)으로 정렬합니다 . (즉, 6 개의 하위 목록을 사용하면 처음 3 개가 가장 낮은 순서에서 가장 높은 순서로 정렬되고 5 개의 하위 목록이있는 경우 주먹 3이 가장 낮은 순서에서 가장 높은 순서로 정렬됩니다.)m//2
하위 목록 의 마지막 양을 최고에서 최저로 정렬합니다 (//
정수 나누기). (즉, 6 개의 하위 목록이있는 경우 마지막 3 개가 가장 높은 순서에서 가장 낮은 순서로 정렬되고 5 개의 하위 목록이있는 경우 마지막 2 개가 가장 높은 순서에서 가장 낮은 순서로 정렬됩니다.)
- 모든 하위 목록을 병합하여 단일 목록을 다시 구성하십시오.
예 :
입력 : n=7
및 [3,2,1,-4,5,6,17,2,0,3,5,4,66,-7,7,6,-5,2,10]
단계 1 : [[3,2,1,-4,5,6,17],[2,0,3,5,4,66,-7],[7,6,-5,2,10]]
단계 2 : [[-4,1,2,3,5,6,17],[-7,0,2,3,4,5,66],[10,7,6,2,-5]]
단계 3 / 출력 :[-4,1,2,3,5,6,17,-7,0,2,3,4,5,66,10,7,6,2,-5]
입력 : n=4
및 [7,4,-8,9,3,19,0,-23,-13,13]
단계 1 : [[7,4,-8,9],[3,19,0,-23],[-13,13]]
단계 2 : [[-8,4,7,9],[-23,0,3,19],[13,-13]]
단계 3 / 출력 :[-8,4,7,9,-23,0,3,19,13,-13]
도전 규칙 :
- 정수 입력
n
은 1보다 큽니다. - 정수 목록의 크기는보다 큽니다
n
. - 후행 서브리스트는
n
(예와 테스트 사례에서 볼 수 있듯이) 보다 작을 수 있습니다. - I / O 형식은 모든 합리적인 형식으로 유연합니다. 정수 또는 소수의 목록 / 배열, 쉼표 / 공백 / 줄 바꿈 문자열, 정수 스트림 등이 될 수 있습니다. 출력은 2 단계와 같은 2D 목록이 아닐 수 있습니다. 3 단계 단일 목록으로 다시 병합 이 도전에 필요합니다.)
일반 규칙:
- 이것은 코드 골프바이트 단위의 최단 답변이 이깁니다.
코드 골프 언어가 코드 골프 언어 이외의 언어로 답변을 게시하지 못하게하십시오. '모든'프로그래밍 언어에 대한 가능한 한 짧은 대답을 생각해보십시오. - 표준 규칙이 답변에 적용 되므로 STDIN / STDOUT, 적절한 매개 변수 및 리턴 유형의 전체 프로그램과 함께 함수 / 방법을 사용할 수 있습니다. 당신의 전화.
- 기본 허점 은 금지되어 있습니다.
- 가능하면 코드 테스트 링크를 추가하십시오.
- 또한 답변에 대한 설명을 추가하는 것이 좋습니다.
테스트 사례 :
Inputs: n=7 and [3,2,1,-4,5,6,17,2,0,3,5,4,66,-7,7,6,-5,2,10]
Output: [-4,1,2,3,5,6,17,-7,0,2,3,4,5,66,10,7,6,2,-5]
Inputs: n=4 and [7,4,-8,9,3,19,0,-23,-13,13]
Output: [-8,4,7,9,-23,0,3,19,13,-13]
Inputs: n=2 and [7,-3,1]
Output: [-3,7,1]
Inputs: n=3 and [1,6,99,4,2]
Output: [1,6,99,4,2]
Inputs: n=2 and [5,2,9,3,-5,-5,11,-5,4,12,9,-2,0,4,1,10,11]
Output: [2,5,3,9,-5,-5,-5,11,4,12,9,-2,4,0,10,1,11]
Inputs: n=3 and [5,2,9,3,-5,-5,11,-5,4,12,9,-2,0,4,1,10,11]
Output: [2,5,9,-5,-5,3,-5,4,11,12,9,-2,4,1,0,11,10]