https://school.programmers.co.kr/learn/courses/30/lessons/120842
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요.
num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 길이가 8이고 n이 2이므로 num_list를 2 * 4 배열로 다음과 같이 변경합니다. 2차원으로 바꿀 때에는 num_li
st의 원소들을 앞에서부터 n개씩 나눠 2차원 배열로 변경합니다.
처음에 이 문제를 봤을 때 어떻게 풀어야하지?? 라는 생각을 했었다.
해답은 range(a,b,c)
c에서 찾을 수 있었다.
c는 한번 실행 했을 때 뛰어 넘는 숫자 Js로 보면 마치
for(let i = a; b ; c) 와 같은 개념이였다
그리고 인덱스 슬라이싱을 활용해 문제를 풀었다
def solution(num_list, n):
answer = []
for i in range(0,len(num_list),n):
answer += [num_list[i:i+n]]
return answer
n = 2 라면
우선 반복문을 0부터 num_list의 길이만큼 도는데 n만큼 뛰어 넘어준다
i = 0 이 되고 answer에 num_list[0:0+2] 를 배열로 넣어준다.
i = 2 가 되고 answer애 num_list[2:2+2] 를 배열로 넣어준다.
반복!!!
'프로그래머스 알고리즘 문제' 카테고리의 다른 글
프로그래머스 Python 알고리즘 문제 평행 (0) | 2022.12.27 |
---|---|
프로그래머스 Python 알고리즘 문제 OX퀴즈 (0) | 2022.12.18 |
프로그래머스 Python 알고리즘 문제 겹치는 선분의 길이 (0) | 2022.12.17 |
프로그래머스 Python 알고리즘 문제 영어가 싫어요 (1) | 2022.12.15 |
프로그래머스 Python 알고리즘 문제 캐릭터의 좌표 (0) | 2022.12.14 |
댓글