development

Hackerrank 프로그래밍 퀴즈 Compare the Triplets 풀이 및 해설

원본 문제 링크 : hackerrank 에서 보기

풀이 Github 링크 : github 에서 보기

문제 : 주어진 a,b 배열 각각의 원소를 비교하여 큰 숫자에 점수를 계산하고 합쳐서 리턴해주는 퀴즈

솔루션 : 1) a, b 는 리스트로 주어지므로 리스트 원소 길이만큼 for 문으로 반복한다.
            2) 각 위치는 for 문의 a[pos] 식으로 접근한다.
            3) 앞의 값이 큰 경우 a, 뒤의 값이 큰 경우는 b에 점수를 부과한다.
            4) 만약 결과가 2,3 인 경우 [2,3]으로 리스트에 넣어서 리턴해달라고 했으므로,
                파이썬에서는 [a, b] 형태로 리스트에 넣어 리턴해주면 된다.

풀이
def compareTriplets(a, b):
    result_a = 0
    result_b = 0
    for pos in range(len(a)):
        if a[pos] > b[pos]:
            result_a += 1
        elif a[pos] < b[pos]:
            result_b += 1
    return [result_a, result_b]


if __name__ == '__main__':
    fptr = open(os.environ['OUTPUT_PATH'], 'w')

    a = list(map(int, input().rstrip().split()))

    b = list(map(int, input().rstrip().split()))

    result = compareTriplets(a, b)

    fptr.write(' '.join(map(str, result)))
    fptr.write('\n')

    fptr.close()