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();
}
}

I’d like to thank you for the efforts you have put in writing this site. I am hoping to view the same high-grade blog posts from you later on as well. In truth, your creative writing abilities has encouraged me to get my own, personal blog now 😉
I love it when folks come together and share ideas. Great website, continue the good work.
Everything is very open with a clear description of the issues. It was truly informative. Your website is useful. Thanks for sharing!
Hi, I do think your site could be having web browser compatibility issues. Whenever I take a look at your website in Safari, it looks fine however, if opening in IE, it has some overlapping issues. I merely wanted to give you a quick heads up! Besides that, great site!
Pretty! This has been a really wonderful post. Many thanks for providing these details.
I do not even understand how I ended up here, but I assumed this publish used to be great
Hello! I simply would like to give an enormous thumbs up for the nice data you might have right here on this post. I shall be coming back to your weblog for more soon.
At MCI Clinic, we specialize in cataract treatment with extensive experience, state-of-the-art equipment, and affordable prices. Our skilled professionals perform advanced procedures such as phacoemulsification, ensuring precise removal of the cloudy lens and its replacement with a high-quality artificial one. The surgery is quick, safe, and minimally invasive, providing excellent outcomes for our patients.
Choosing MCI means benefiting from top-tier medical care without the high cost. We are committed to restoring your clear vision and improving your quality of life through effective, cost-efficient cataract treatments.
MCI Clinic – oftalmolog
very informative articles or reviews at this time.
After looking over a number of the articles on your website, I honestly like your technique of blogging. I added it to my bookmark webpage list and will be checking back soon. Please visit my website too and tell me how you feel.