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. You can definitely see your expertise in the work you write. The world hopes for more passionate writers like you who are not afraid to say how they believe. Always follow your heart.

  2. This is really interesting, You are a very skilled blogger. I’ve joined your feed and look forward to seeking more of your fantastic post. Also, I have shared your website in my social networks!

  3. Что касается душевая дверь rgw le 12 заходите на наш веб портал. В наше современное время дизайнеры и даже сами владельцы жилья делают из простых помещений красивейшие произведения искусства и максимально комфортные условия. Ванная комната не является исключением, из них получаются шикарные интерьеры с наличием ванны, писсуаров и раковин. В нашем в каталоге Вы увидите: ванны, душевые углы и ограждения, шторки на ванну, душевые поддоны, трапы, писсуары, системы инсталляции, подстолья, смесители, сантехника для инвалидов, аксессуары и многое другое

  4. Если Вы планировали найти мебель для ванной комнаты недорого распродажа то Вы на нужном пути. Мы всегда готовы прийти на помощь с подбором и подобрать именно то, что Вы искали. Также можно оформить заказ на сайте sansmail.ru или по вышеуказанному телефону – установку сантехнических предметов, купленных в нашем магазине. Пишите, приезжайте, мы будем рады с вами работать. SanAmail магазин находится по адресу: г. Москва, МКАД 41 км, 4, стр. 1. Звоните по телефону +7(499)444-17-64 и мы дадим Вам квалифицированную рекомендацию.

  5. wonderful publish, very informative. I’m wondering why the opposite specialists of this sector don’t realize this. You must continue your writing. I’m sure, you have a huge readers’ base already!

  6. Hi, I do think this is a great website. I stumbledupon it 😉 I will return once again since i have bookmarked it. Money and freedom is the greatest way to change, may you be rich and continue to help others.

  7. I know this if off topic but I’m looking into starting my own blog and was wondering what all is
    required to get set up? I’m assuming having a blog like yours would cost a pretty penny?
    I’m not very internet savvy so I’m not 100% positive. Any suggestions or
    advice would be greatly appreciated. Appreciate it

  8. I was just seeking this information for a while. After 6 hours of continuous Googleing, at last I got it in your web site. I wonder what is the lack of Google strategy that do not rank this kind of informative sites in top of the list. Normally the top web sites are full of garbage.

Leave a Reply

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