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. Wonderful blog you have here but I was wanting to know if you knew of any user discussion forums that cover the same topics talked about here? I’d really like to be a part of online community where I can get suggestions from other knowledgeable people that share the same interest. If you have any recommendations, please let me know. Thanks!

  2. Я обратился в компанию seo-prodvijenie-v-msk потребовалось, когда мне нужно было улучшить видимость своего сайта в поисковиках. Благодаря комплексной работе команды, использованию актуальных SEO-инструментов и индивидуализированной стратегии продвижения, я заметил значительное повышение трафика и улучшение позиций сайта. Рекомендую их как надежного партнера в SEO-продвижении.

  3. I have seen plenty of useful items on your site about desktops. However, I have the impression that notebooks are still not quite powerful more than enough to be a good choice if you frequently do projects that require plenty of power, such as video editing. But for internet surfing, microsoft word processing, and a lot other prevalent computer work they are perfectly, provided you can’t mind the screen size. Many thanks for sharing your notions.

  4. Когда мне захотелось улучшить видимость сайта моей компании, я выбрал услуги https://seo-best1.ru. Они предложили комплексный подход к SEO, который заметно улучшил наше положение в результатах поиска. Команда профессионально подошла к задаче, и результаты не заставили себя ждать. Рекомендую как надежного партнера в продвижении сайтов.

  5. Быстрый вывоз мусора ecologia-t.ru

    Касательно вывоз мусора цао мы Вам окажем помощь прямо сейчас. Звоните по контактному телефону 8(495)506-26-76 или оформите обратный и мы Вам перезвоним. Мы находимся по адресу: 109382, г. Москва, ул. Краснодонская, д. 46. Подробный прайс лист Вы сможете найти на нашем сайте ecologia-t.ru и зависит от многих факторов. Это: вид мусора, размеры контейнера и необходимая грузоподъемность транспорта. Окончательная стоимость будет высчитана после созвона с нашим консультантом. Звоните и скорее заполняйте заявку на вывоз мусора.

  6. An outstanding share! I have just forwarded this onto a co-worker who was doing a little homework on this. And he in fact ordered me dinner due to the fact that I discovered it for him… lol. So allow me to reword this…. Thanks for the meal!! But yeah, thanks for spending time to discuss this matter here on your web page.

  7. One important issue is that if you are searching for a student loan you may find that you will want a cosigner. There are many circumstances where this is true because you could find that you do not have a past credit history so the bank will require that you have someone cosign the financial loan for you. Interesting post.

Leave a Reply

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