본문 바로가기

Algorithm/Implementation

(Python3) - 프로그래머스(코딩 기초 트레이닝) : 배열 비교하기

반응형

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

 

프로그래머스

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

programmers.co.kr

구현문제였습니다.

📕 풀이방법

📔 입력 및 초기화

정답변수 answer를 선언 후 0으로 초기화합니다.

📔 풀이과정

분기에 따라 answer를 갱신합니다.

1. arr1의 길이가 더 긴 경우: answer를 1로 갱신합니다.

2. arr2의 길이가 더 긴 경우: ansewr를 -1로 갱신합니다.

3. 길이가 같은 경우

  3-1. arr1의 원소 합이 더 큰 경우: answer를 1로 갱신합니다.

  3-2. arr2의 원소 합이 더 큰 경우: answer를 -1로 갱신합니다.

📔 정답 출력 | 반환

answer를 반환합니다.


📕 Code

📔 Python3

def sum_of(arr):
    sum = 0
    for a in arr:
        sum += a
    return sum

def solution(arr1, arr2):
    answer = 0
    if len(arr1) > len(arr2):
        answer = 1
    elif len(arr1) < len(arr2):
        answer = -1
    else:
        arr1_sum = sum_of(arr1)
        arr2_sum = sum_of(arr2)
        if arr1_sum > arr2_sum:
            answer = 1
        elif arr1_sum < arr2_sum:
            answer = -1
    return answer

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.