n^2 배열 자르기

코딩테스트 연습 - n^2 배열 자르기 | 프로그래머스 스쿨

문제

문제설명

정수 nleftright가 주어집니다. 다음 과정을 거쳐서 1차원 배열을 만들고자 합니다.

  • n행 n열 크기의 비어있는 2차원 배열을 만듭니다.
  • i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다.
  • 1행, 2행, ..., n행을 잘라내어 모두 이어붙인 새로운 1차원 배열을 만듭니다.
  • 새로운 1차원 배열을 arr이라 할 때, arr[left], arr[left+1], ..., arr[right]만 남기고 나머지는 지웁니다.
  • 정수 nleftright가 매개변수로 주어집니다. 주어진 과정대로 만들어진 1차원 배열을 return 하도록 solution 함수를 완성해주세요.

    제한사항

  • 1 ≤ n ≤ 10^7
  • 0 ≤ left ≤ right < n^2
  • right - left < 10^5
  • 입출력 예

    nleftrightresult
    325[3,2,2,3]
    4714[4,3,3,3,4,4,4,4]

    입출력 예 설명 #1

  • 다음 애니메이션은 주어진 과정대로 1차원 배열을 만드는 과정을 나타낸 것입니다.
  • Blog image

    접근 방식 및 나의 해답

    각각 x축, y축의 값을 반복문을 사용하여 한 array에 넣고 slice와 left,right 값을 이용하여 답을 도출

    9개의 테스트를 통과했으나 나머지 테스트는 런타임 에러로 실패

    수정한 해답

    인상적인 답안