AI 그게 뭔데
끄적끄적 개발일지
AI 그게 뭔데
전체 방문자
오늘
어제
  • 분류 전체보기 (342)
    • 논문 (5)
    • DL(Deep-Learning) (34)
      • 개념 (14)
      • Python 기초 (14)
      • Tensorflow (6)
      • Pytorch (0)
    • NLP (10)
    • OpenCV (53)
    • DevOps (10)
      • AWS (2)
      • Docker & Kubernetes (4)
      • Spark (3)
      • SQL (1)
    • MacOS (1)
    • React-Native (2)
    • BI (3)
      • GA(Google Analytics) (3)
      • Tableau (0)
    • 알고리즘 (221)
      • 백준 (76)
      • 프로그래머스 (108)
      • 기타 알고리즘 (37)

인기 글

태그

  • LEVEL2
  • 연습문제
  • 백준
  • level1
  • 알고리즘
  • 프로그래머스
  • OpenCV
  • 파이썬
  • 이코테
  • Python

최근 글

hELLO · Designed By 정상우.
AI 그게 뭔데

끄적끄적 개발일지

[월간 코드 챌린지 시즌3] n^2 배열 자르기 - Level 2
알고리즘/프로그래머스

[월간 코드 챌린지 시즌3] n^2 배열 자르기 - Level 2

2022. 2. 24. 22:51
 

코딩테스트 연습 - n^2 배열 자르기

정수 n, left, right가 주어집니다. 다음 과정을 거쳐서 1차원 배열을 만들고자 합니다. n행 n열 크기의 비어있는 2차원 배열을 만듭니다. i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다. 1행 1열부

programmers.co.kr

 

문제 설명

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

  1. n행 n열 크기의 비어있는 2차원 배열을 만듭니다.
  2. i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다.
    • 1행 1열부터 i행 i열까지의 영역 내의 모든 빈 칸을 숫자 i로 채웁니다.
  3. 1행, 2행, ..., n행을 잘라내어 모두 이어붙인 새로운 1차원 배열을 만듭니다.
  4. 새로운 1차원 배열을 arr이라 할 때, arr[left], arr[left+1], ..., arr[right]만 남기고 나머지는 지웁니다.

정수 n, left, right가 매개변수로 주어집니다. 주어진 과정대로 만들어진 1차원 배열을 return 하도록 solution 함수를 완성해주세요.

 

 

제한사항

  • 1 ≤ n ≤ 107
  • 0 ≤ left ≤ right < n2
  • right - left < 105

 

입출력 예

n left right result
3 2 5 [3,2,2,3]
4 7 14 [4,3,3,3,4,4,4,4]

 

 

입출력 예 설명

입출력 예#1

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

 

 


✔ Solution

def solution(n, left, right):
    answer = []
    for i in range(left,right+1):
        answer.append(max(divmod(i,n))+1)
    return answer

 

 

✔ Solution 2 - 다른 사람 풀이

solution = lambda n, left, right: list((max(i // n, i % n) + 1 for i in range(left, right + 1)))

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[2018 KAKAO BLIND] 캐시 - Level 2  (0) 2022.02.24
[2018 KAKAO] n진수 게임 - Level 2  (0) 2022.02.24
[2017 팁스타운] 예상 대진표 - Level 2  (0) 2022.02.24
[위클리 챌린지] 피로도 - Level 2  (0) 2022.02.20
[2021 카카오 인턴십] 숫자 문자열과 영단어 - Level 1  (0) 2022.02.20
    AI 그게 뭔데
    AI 그게 뭔데
    공부와 개발 그리고 AI가 약간 첨가된 흔적 남기기

    티스토리툴바