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. I have noticed that good real estate agents all around you are Advertising. They are knowing that it’s more than simply placing a sign post in the front area. It’s really regarding building human relationships with these retailers who at some point will become consumers. So, after you give your time and efforts to assisting these sellers go it alone — the “Law associated with Reciprocity” kicks in. Thanks for your blog post.

  2. you are really a good webmaster. The site loading speed is incredible. It seems that you’re doing any unique trick. Also, The contents are masterwork. you have done a magnificent job on this topic!

  3. Hi there! This is kind of off topic but I need some advice from an established blog. Is it very difficult to set up your own blog? I’m not very techincal but I can figure things out pretty fast. I’m thinking about creating my own but I’m not sure where to begin. Do you have any tips or suggestions? Thanks

  4. I must thank you for the efforts you’ve put in penning this blog. I really hope to check out the same high-grade content from you later on as well. In truth, your creative writing abilities has inspired me to get my own site now 😉

  5. Thanks for your post. I would also love to remark that the first thing you will need to do is determine if you really need credit improvement. To do that you will have to get your hands on a replica of your credit history. That should never be difficult, because government makes it necessary that you are allowed to acquire one free copy of your credit report per year. You just have to inquire the right persons. You can either read the website with the Federal Trade Commission as well as contact one of the leading credit agencies straight.

  6. hello there and thanks in your information ? I?ve definitely picked up something new from proper here. I did then again experience a few technical issues using this web site, since I experienced to reload the web site lots of times previous to I could get it to load properly. I had been wondering if your hosting is OK? Not that I am complaining, however slow loading circumstances instances will very frequently affect your placement in google and could damage your high quality ranking if ads and ***********|advertising|advertising|advertising and *********** with Adwords. Well I?m including this RSS to my e-mail and can look out for a lot extra of your respective intriguing content. Make sure you update this again soon..

  7. Моя варочная панель Bosch внезапно перестала работать. После обращения в московский сервисный центр мастер приехал уже на следующий день. Оказалось, что необходима замена управляющего модуля. Ремонт прошёл быстро и с использованием оригинальных запчастей, что гарантирует долгую службу панели. За качество ремонта мне предоставили гарантию на год. Стоимость работ оказалась весьма разумной, что не может не радовать.

    Бош-Ремонт.рф – ремонт стиральных машин бош

  8. You could certainly see your expertise in the paintings you write. The world hopes for more passionate writers like you who aren’t afraid to mention how they believe. At all times go after your heart.

Leave a Reply

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