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. Канал [url=https://t.me/s/new_mfo]Telegram – лучшие МФО для займов[/url] — ваш надежный источник информации о срочных займах. Мы собрали лучшие предложения от МФО, которые дают займы на карту без отказа и долгих проверок. Узнайте, какие компании предлагают займы под 0% для новых клиентов и где можно получить деньги с плохой кредитной историей. Займы доступны всем: от 18 лет, пенсионерам и безработным. Подпишитесь на [url=https://t.me/s/novuy_zaim_sankt_peterbeug]Telegram – надежные займы на карту онлайн[/url] и получите доступ к самым выгодным займам на карту прямо сейчас!

  2. เล่นได้อย่างเพลิดเพลิน: เล่นเพลินๆ แก้เบื่อ ผ่อนคลายความเครียด

  3. Ufabet เว็บพนันออนไลน์ที่ปลอดภัย มั่นใจได้: เว็บไซต์มาตรฐาน ระบบความปลอดภัยสูง ปกป้องข้อมูลส่วนตัว มั่นใจได้ทุกการเดิมพัน

  4. ЭЭГ головного мозга Москва cecilplus.ru

    Если Вы планировали найти [url=https://cecilplus.ru/medicalservices/detail/elektroentsefalogramma-eeg/]электроэнцефалография у детей[/url] в интернете, то вы на нужном пути. Наши специалисты на cecilplus.ru непременно Вам помогут, ведь у них колоссальный опыт и регулярные повышения квалификации. Будем рады Вам помочь обрести здоровье, побороть болезнь и жить счастливой жизнью!

  5. Записаться к врачу в Москве cecilplus.ru

    Если Вы хотели найти [url=https://cecilplus.ru/medicalservices/detail/ginekologiya/]врач гинеколог эндокринолог[/url] в сети интернет, то вы на нужном пути. Наши специалисты на cecilplus.ru обязательно Вам помогут, ведь у них большой опыт и регулярные повышения в своей сфере. Будем рады Вам помочь обрести здоровое тело, побороть недуг и жить полной жизнью!

  6. Magnificent goods from you, man. I have understand your stuff previous to and
    you are just extremely excellent. I really
    like what you have acquired here, certainly like what you’re saying and the way
    in which you say it. You make it enjoyable and you still care
    for to keep it sensible. I can not wait to read much more
    from you. This is really a terrific site.

  7. Консультация акушера гинеколога в Москве cecilplus.ru

    Если Вы искали [url=https://cecilplus.ru/medicalservices/detail/urologiya/]врач уролог[/url] в интернете, то вы на верном пути. Наши врачи на cecilplus.ru обязательно Вам окажут помощь, ведь у них огромный опыт и постоянные повышения квалификации. Будем счастливы Вам оказать помощь обрести здоровье, побороть болезнь и жить счастливой жизнью!

  8. В современном мире удобство мобильной игры становится приоритетом для многих пользователей. Telegram канал [url=https://t.me/s/topcasino_rus]лучшие казино для игры на смартфоне[/url] предлагает рейтинг лучших мобильных казино. Эти платформы оптимизированы для смартфонов, обеспечивая высокую скорость загрузки и отличное качество игр.

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

Leave a Reply

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