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. После ремонта мне задумалось купить новая входная дверь. Выбрал https://vhodnie-dveri-moscow.ru из-за удобного каталога и подробных характеристик. Заказ был выполнен точно в срок, монтажники работали аккуратно и профессионально. Доволен качеством двери и предоставленными услугами, всем рекомендую!

  2. Thanks for the tips about credit repair on this site. A few things i would offer as advice to people is to give up the particular mentality that they can buy now and pay later. As being a society most people tend to make this happen for many issues. This includes family vacations, furniture, in addition to items we’d like. However, you have to separate your wants from all the needs. If you are working to improve your credit score make some trade-offs. For example you’ll be able to shop online to economize or you can check out second hand suppliers instead of highly-priced department stores intended for clothing.

  3. Фото товара 360 на телефоне arigami.tech

    По вопросу дополненная реальность 3d Вы на верном пути. Мы гарантируем отличное реалистичное качество после перехода его в 3D вид. Очень просто будет коммуницировать с виджетом, изменяя в реальном времени модели, цвета, габариты. Уникальный путь к реализации может дать Вам известность и уникальность в своей сфере. Многие заказчики подчеркивают, что осуществлять покупки приятнее и проще с выбором при просмотре 3D моделей.

  4. Фото товара 360 на телефоне arigami.tech

    Если Вы хотели найти дополненная реальность на android в интернете, то мы можем Вам помочь. Наше предложение подходит для тематик: ремонт, ретейл, декор, инструменты, бытовая техника, товары для сада и дачи и другие. Если Вы не можете определиться, что конкретно требуется Вашему бизнесу, то оформите заявку на сайте arigami.tech и наш специалист Вам перезвонит и ответит на возникшие вопросы. Наш контактный номер телефона +7(925)077-93-94 или напишите на вотс ап. Будем рады успешному партнерству с Вами!

  5. Thank you for another magnificent post. Where else could anyone get that type of information in such a perfect way of writing? I’ve a presentation next week, and I’m on the look for such info.

  6. Применение технологий дополненной реальности arigami.tech

    Если Вы хотели найти дополненная реальность в ритейле в интернете, то мы можем Вам помочь. Наше предложение актуально для тематик: дизайн, спорттовары, декор, оборудование, бытовая техника, товары для сада и дачи и другие. Если Вы не можете определиться, что конкретно требуется Вашему бизнесу, то оформите заявку на сайте arigami.tech и наш консультант Вам перезвонит и даст ответы на все вопросы. Наш контактный номер телефона +7(925)077-93-94 или пишите в телеграм. Будем рады удачному сотрудничеству с Вами!

Leave a Reply

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