본문 바로가기

코딩테스트/코딩 테스트 입문

2차원으로 만들기

문제

 

 

 

# 내 풀이

def solution(num_list, n):
    answer = []
    
    for i in range(0, len(num_list), n):
        answer.append(num_list[i:i+n])
    
    return answer
  • range(start, stop, step)
    • start : 시작 숫자 (생략하면 기본값 0)
    • stop : 끝 숫자 (ex. 11이면 -> 인덱스 10까지)
    • step : 증가/감소 간격 (생략하면 기본값 1)
  • 리스트 슬라이싱을 사용하여 서브리스트를 추출한 후, answer 리스트에 추가

 

 

 

# GPT 풀이_1

def solution(num_list, n):
    return [num_list[i:i+n] for i in range(0, len(num_list), n)]

 

 

 

# 리스트 슬라이싱 :

리스트 슬라이싱을 사용하면 리스트의 특정 부분(서브 리스트)을 쉽게 추출할 수 있다.

list[start:stop:step]
  • start : 시작 인덱스
  • stop : 끝 인덱스
  • step : 간격 (생략하면 1)
num_list = [1, 2, 3, 4, 5, 6, 7, 8]

print(num_list[::2])   # [1, 3, 5, 7] → 2칸씩 건너뛰기
print(num_list[1::2])  # [2, 4, 6, 8] → 인덱스 1부터 2칸씩 건너뛰기

 

'코딩테스트 > 코딩 테스트 입문' 카테고리의 다른 글

A로 B 만들기  (0) 2025.03.12
k의 개수  (0) 2025.03.11
모스부호  (0) 2025.03.11
합성수 찾기  (0) 2025.03.10
중복된 문자 제거  (0) 2025.03.10