programming
Hackerrank 프로그래밍 퀴즈 plus minus 풀이 및 해설
by Kitle · 2020. 07. 30.
프로그래밍 퀴즈 - 정수 배열이 주어지면 양수, 음수 및 0 인 요소들의 비율을 계산하시오. 결과는 각 분수의 소수점 값을 출력하라. 해당 문제에 대한 풀이와 솔루션을 알아보겠습니다.
퀴즈 출처 - hackerrank : hackerrank 에서 해당 퀴즈 보기
Github 에서 풀이 보기 : 깃허브로이동
솔루션 :
1) 각 +, -, 0 의 갯수를 직접 계산하여 list에 넣는다. Result = [] 활용
2) 비율은 위의 갯수를 전체 갯수로 로 나누면 되므로 len(arr)을 활용해 나누어 준다.
3) 출력은 소숫점 5자리까지 출력이 필요하므로 format( ,'.5f')를 활용한다.
추가: 카운트를 더 깔끔하게 하는 방식이 있다면 해당 방식으로 개선해보자.
풀이
#!/bin/python3
import math
import os
import random
import re
import sys
# Complete the plusMinus function below.
def plusMinus(arr):
result = [0, 0, 0]
for item in arr:
if item > 0:
result[0] += 1
elif item < 0:
result[1] += 1
elif item == 0:
result[2] += 1
for item in result:
print(format(item / len(arr), '.5f'))
if __name__ == '__main__':
n = int(input())
arr = list(map(int, input().rstrip().split()))
plusMinus(arr)