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’m not sure why but this web site is loading incredibly slow for me. Is anyone else having this problem or is it a problem on my end? I’ll check back later on and see if the problem still exists.

  2. В нашем быстром мире каждый ищет возможности получить финансовую помощь мгновенно. Если вы хотите изучить все доступные варианты, то наш сайт предлагает уникальный список, где собраны все мфо. Найдите идеальное предложение, которое подойдет именно вам, благодаря нашему обширному каталогу новейших и проверенных организаций.

  3. hello!,I like your writing so much! share we communicate more about your article on AOL? I require an expert on this area to solve my problem. May be that’s you! Looking forward to see you.

  4. Having read this I believed it was very informative. I appreciate you spending some time and effort to put this information together. I once again find myself personally spending way too much time both reading and commenting. But so what, it was still worthwhile.

  5. Воспользуйтесь уникальным шансом найти малоизвестные мфо предоставляющие займы онлайн без отказа. Теперь получить необходимые средства стало еще проще и доступнее, благодаря многообразию предложений, подходящих под любые потребности.

  6. این هودی ریک و مورتی برند برشکا طرح و رنگ دیگری نیز دارد.

    برای سفارش به صورت انبوه به پشتیبانی ما در واتس اپ
    پیام دهید.

  7. One thing I have actually noticed is there are plenty of myths regarding the finance institutions intentions while talking about foreclosure. One fairy tale in particular is the fact the bank wants your house. The lender wants your hard earned cash, not the house. They want the funds they loaned you having interest. Avoiding the bank is only going to draw a new foreclosed final result. Thanks for your publication.

  8. Обновите свои педагогические знания и методики с помощью курсов повышения квалификации для учителей от Академии “МАПС”. Наше дистанционное обучение позволяет вам развиваться профессионально, не отходя от домашних обязанностей. Улучшите свои навыки и вдохновите своих учеников на новые достижения.

    Maps-Edu – специалист по социальной работе обучение дистанционно

Leave a Reply

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