배열 뒤집기

2024. 7. 15. 18:00코딩테스트 입문

https://school.programmers.co.kr/learn/courses/30/lessons/120821

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


문제 설명
정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.


제한사항

  • 1 ≤ num_list의 길이 ≤ 1,000
  • 0 ≤ num_list의 원소 ≤ 1,000

입출력 예

num_list result
[1, 2, 3, 4, 5] [5, 4, 3, 2, 1]
[1, 1, 1, 1, 1, 2] [2, 1, 1, 1, 1, 1]
[1, 0, 1, 1, 1, 3, 5] [5, 3, 1, 1, 1, 0, 1]

입출력 예 설명
입출력 예 #1

  • num_list가 [1, 2, 3, 4, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 4, 3, 2, 1]을 return합니다.

입출력 예 #2

  • num_list가 [1, 1, 1, 1, 1, 2]이므로 순서를 거꾸로 뒤집은 배열 [2, 1, 1, 1, 1, 1]을 return합니다.

입출력 예 #3

  • num_list가 [1, 0, 1, 1, 1, 3, 5]이므로 순서를 거꾸로 뒤집은 배열 [5, 3, 1, 1, 1, 0, 1]을 return합니다.

배열을 뒤집기만 하면 되는 간단한 문제입니다.

이런 배열 뒤집기 같은 경우는 대부분 함수로 지원하기 때문에 간단하게 풀 수 있습니다. 혹은 반복문으로 뒤에서부터 저장할 수도 있고요.

파이썬과 자바로 풀어보도록 하겠습니다.

 

1. 파이썬

def solution(num_list):
    # num_list에 영향을 주지 않기 위해 reversed 사용
    answer = list(reversed(num_list))
    return answer

 

2. 자바

class Solution {
    public int[] solution(int[] num_list) {
        # 배열의 길이를 구합니다.
        int L = num_list.length;
        # 새로운 배열을 초기화합니다.
        int[] answer = new int[L];
        # 역순으로 집어넣습니다.
        for (int i=0; i < L; i++) {
            answer[i] = num_list[L - (i + 1)];
        }
        return answer;
    }
}

 

어느 방식으로 풀던지 상관없습니다.

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

직각삼각형 출력하기  (0) 2024.07.17
문자열 뒤집기  (0) 2024.07.16
나이 출력  (0) 2024.07.14
아이스 아메리카노  (0) 2024.07.13
옷가게 할인 받기  (0) 2024.07.12