본문 바로가기
💻 하나씩 차곡차곡/프로그래머스 (Python)

코딩테스트 입문 Day10 - 점의 위치 구하기, 2차원으로 만들기, 공 던지기, 배열 회전 시키기

by 뚜루리 2023. 2. 28.
728x90
320x100

점의 위치 구하기

def solution(dot):
    answer = 0

    if dot[0] > 0:
        if dot[1] > 0:
            answer = 1
        else :
            answer = 4
    else :
        if dot[1] > 0:
            answer = 2
        else :
            answer = 3

    return answer

 

2차원으로 만들기

import numpy as np

def solution(num_list, n):
    answer = np.array(num_list).reshape(-1, n)
    return answer.tolist()
  • reshape() 함수 : numpy.ndarray의 차원과 모양을 바꿔준다.
def solution(num_list, n):
    answer = []
    for i in range(0, len(num_list), n):
        answer.append(num_list[i:i+n])
    return answer

 

 

공 던지기

def solution(numbers, k):
    return numbers[2 * (k - 1) % len(numbers)]

 

배열 회전 시키기

from collections import deque

def solution(numbers, direction):

    numbers = deque(numbers)
    if direction == "right":
        numbers.rotate(1)
    elif direction == "left":
        numbers.rotate(-1)

    return list(numbers)
  • 배열을 회전 시키기 위해 rotate함수가 필요하고 해당 함수를 호출하려면 deque자료형이 필요함.
  • rotate함수 : 음수를 넣게 된다면 왼쪽회전 양수는 오른쪽회전.
728x90
320x100

뚜루리님의
글이 좋았다면 응원을 보내주세요!