Cerinta completa
Given an array of integers, calculate the ratios of its elements that are , , and . Print the decimal value of each fraction on a new line with 6 places after the decimal.
Note: This challenge introduces precision problems. The test cases are scaled to six decimal places, though answers with absolute error of up to are acceptable.
Example
There are elements: two positive, two negative and one zero. Their ratios are , and . Results are printed as:
0.400000
0.400000
0.200000
Function Description
Complete the function with the following parameter(s):
- : an array of integers
Print
Print the ratios of positive, negative and zero values in the array. Each value should be printed on a separate line with digits after the decimal. The function should not return a value.
Input Format
The first line contains an integer, , the size of the array.
The second line contains space-separated integers that describe .
Constraints
Sample Input
STDIN Function
----- --------
6 arr[] size n = 6
-4 3 -9 0 4 1 arr = [-4, 3, -9, 0, 4, 1]
Sample Output
0.500000
0.333333
0.166667
Explanation
There are positive numbers, negative numbers, and zero in the array.
The proportions of occurrence are positive: , negative: and zeros: .
Limbajul de programare folosit: python3
Cod:
import sys
data = list(map(int, sys.stdin.read().strip().split()))
if not data:
print('0.000000')
print('0.000000')
print('0.000000')
raise SystemExit
n = data[0]
arr = data[1:1+n]
pos = sum(1 for x in arr if x > 0)
neg = sum(1 for x in arr if x < 0)
zero = n - pos - neg
print(f"{pos/n:.6f}")
print(f"{neg/n:.6f}")
print(f"{zero/n:.6f}")
Scor obtinut: 1.0
Submission ID: 464552212
Link challenge: https://www.hackerrank.com/challenges/plus-minus/problem
