Given an array of integers, calculate the ratios of its elements that are positive, negative, and zero.

2 0
Read Time:2 Minute, 15 Second

Given an array of integers, calculate the ratios of its elements that are positivenegative, 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:

  1. proportion of positive values
  2. proportion of negative values
  3. 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();
    }
}
Happy
Happy
30 %
Sad
Sad
20 %
Excited
Excited
10 %
Sleepy
Sleepy
10 %
Angry
Angry
30 %
Surprise
Surprise
0 %

About Author

Average Rating

5 Star
39%
4 Star
21%
3 Star
15%
2 Star
21%
1 Star
3%

977 thoughts on “Given an array of integers, calculate the ratios of its elements that are positive, negative, and zero.

  1. Если вам необходим ремонт холодильника Гаггенау в Москве, множество сервисных центров предлагают квалифицированную помощь. Профессионалы осуществляют ремонт на дому, гарантируя быстрое устранение неисправностей и восстановление функциональности устройства. Используются исключительно оригинальные запчасти, что обеспечивает долговечность и надежность ремонта, а также продлевает срок службы техники.

    Gaggenau-Remonty.ru – gaggenau холодильник сервис

  2. Hi, Neat post. There’s a problem with your site in internet explorer, would test this? IE still is the market leader and a large portion of people will miss your fantastic writing because of this problem.

  3. Hi there would you mind letting me know which webhost you’re using? I’ve loaded your blog in 3 different web browsers and I must say this blog loads a lot faster then most. Can you suggest a good internet hosting provider at a honest price? Thanks, I appreciate it!

  4. Hey There. I found your blog using msn. This is an extremely well written article. I?ll make sure to bookmark it and return to read more of your useful information. Thanks for the post. I will certainly comeback.

  5. After checking out a few of the articles on your site, I really like your technique of writing a blog. I added it to my bookmark website list and will be checking back soon. Please check out my website as well and let me know what you think.

  6. Hi, Neat post. There’s an issue along with your site in web explorer, could check this? IE still is the marketplace leader and a huge section of other folks will omit your magnificent writing because of this problem.

  7. Hello there! I could have sworn I’ve been to this blog before but after looking at many of the articles I realized it’s new to me. Nonetheless, I’m certainly delighted I stumbled upon it and I’ll be bookmarking it and checking back often.

  8. I have learned several important things via your post. I’d also like to say that there might be situation that you will obtain a loan and never need a cosigner such as a National Student Support Loan. When you are getting credit through a conventional loan service then you need to be ready to have a cosigner ready to assist you to. The lenders can base their very own decision over a few variables but the main one will be your credit score. There are some lenders that will likewise look at your work history and decide based on this but in many cases it will depend on your credit score.

Leave a Reply

Your email address will not be published. Required fields are marked *