Given an array of integers, calculate the ratios of its elements that are positive, negative, and zero. Print the decimal value of each fraction on a new line with 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 plusMinus function in the editor below.
plusMinus has the following parameter(s):
- int arr[n]: 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
Output Format
Print the following lines, each to decimals:
- proportion of positive values
- proportion of negative values
- proportion of zeros
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
-----------------------------------------xxxxxxxx-----------------------------
Java Code
2021
import java.io.*;
import java.math.*;
import java.security.*;
import java.text.*;
import java.util.*;
import java.util.concurrent.*;
import java.util.function.*;
import java.util.regex.*;
import java.util.stream.*;
import static java.util.stream.Collectors.joining;
import static java.util.stream.Collectors.toList;
class Result {
/*
* Complete the 'plusMinus' function below.
*
* The function accepts INTEGER_ARRAY arr as parameter.
*/
public static void plusMinus(List<Integer> arr) {
// porpostion of positive numbers
// porpostion of negative numbers
// zeros
int positive_numbers=0;
int negative_numbers=0;
int zero_numbers=0;
int total_numbers=arr.size();
for(Integer var: arr) {
if(var ==0) {
zero_numbers+=1;
}
else if(var <0) {
negative_numbers+=1;
}else {
positive_numbers+=1;
}
}
double positive=(double)positive_numbers/total_numbers;
double negative=(double)negative_numbers/total_numbers;
double zeros=(double)zero_numbers/total_numbers;
System.out.println(String.format("%.6f",positive));
System.out.println(String.format("%.6f",negative));
System.out.println(String.format("%.6f",zeros));
}
}
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(bufferedReader.readLine().trim());
List<Integer> arr = Stream.of(bufferedReader.readLine().replaceAll("\\s+$", "").split(" "))
.map(Integer::parseInt)
.collect(toList());
Result.plusMinus(arr);
bufferedReader.close();
}
}

Great information shared.. really enjoyed reading this post thank you author for sharing this post .. appreciated
I appreciate you sharing this blog post. Thanks Again. Cool.
Great information shared.. really enjoyed reading this post thank you author for sharing this post .. appreciated
Любителям турецкие сериалы драмы стоит посетить turkline.tv. Здесь собраны самые захватывающие драматические сериалы в HD 1080 качестве с русской озвучкой. Вы сможете насладиться такими популярными проектами, как “Запретный плод” и “Жестокий Стамбул”. Отсутствие рекламы делает просмотр еще более комфортным, а все сериалы доступны бесплатно. Турклайн.тв – идеальное место для ценителей эмоциональных и трогательных историй.
This was beautiful Admin. Thank you for your reflections.
Pretty! This has been a really wonderful post. Many thanks for providing these details.
What?s Happening i am new to this, I stumbled upon this I have discovered It absolutely useful and it has aided me out loads. I hope to contribute & help other customers like its aided me. Great job.
Система обучения охране труда safetysystemsgroup.com
Чтобы найти аккредитация испытательной лаборатории москва обращайтесь в нашу организацию. Звоните по номеру телефона +7(499)348-89-79 или подайте заявку обратный звонок. Наш специалист приедет к Вам и произведет инструментальные измерения, сроком от пяти рабочих дней. Наши главные услуги: оценка профессиональных рисков, инженерно экологические изыскания, программа производственного контроля и другие.
Oh my goodness! Amazing article dude! Thanks, However I am going through problems with your RSS. I don’t know the reason why I can’t subscribe to it. Is there anybody getting the same RSS problems? Anyone who knows the answer will you kindly respond? Thanks.
I’m often to blogging and i really appreciate your content. The article has actually peaks my interest. I’m going to bookmark your web site and maintain checking for brand spanking new information.