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. Приобрел дверь из металла в прошлом месяце – качество на высоте и улучшенная защита для моего дома. Установка заняла совсем немного времени, а уровень шумоизоляции оказался намного лучше ожидаемого. Внешний вид двери гармонично вписался в фасад здания. Советую к покупке!.

  2. Внеплановая спец оценка условий труда safetysystemsgroup.com

    Организация Safety Systems осуществляет специальную оценку условий труда на любом предприятии. Наш основной офис находится в Москве, но ещё в большинстве городов России у нас есть филиалы. СОУТ осуществляется в обязательном порядке для всех компаний, чтобы обеспечить безопасность для работников и сократить вероятность на приобретение штрафов.

    От нас соут компании – от Вас звонок в нашу фирму. Расположены по адресу: 105264, г. Москва, ул. Верхняя Первомайская, д. 47, к. 11, оф. 516. У нас собственная аккредитованная лаборатория, которая поможет Вам сэкономить до 80 % от полной стоимости. Звоните, обращайтесь и заказывайте соут.

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

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

  5. Срочно нужны деньги, а кредитная история не идеальна? Не проблема! В нашем Telegram-канале Займы с плохой КИ вы найдете срочные займы от надежных кредиторов. Получите деньги быстро и без отказов. Подпишитесь и забудьте о финансовых трудностях!

  6. Аппаратное лечение косоглазия — это современный и эффективный способ исправления этого зрительного дефекта, предлагаемый в клинике AllegroVision – массаж воротниковой зоны .ru. Мы являемся лучшей клиникой в стране, где работают квалифицированные специалисты с опытом работы более 10 лет. Аппаратное лечение помогает тренировать мышцы глаз и восстанавливать нормальное зрение без хирургического вмешательства.

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

  7. Недавно у меня возникла непредвиденная ситуация — нужно было срочно оплатить медицинские услуги. Сумма составляла 20 тысяч рублей, а кредитная история у меня была не самой лучшей. На помощь пришёл канал https://t.me/s/novue_zaimu, где я нашёл новые займы на карту онлайн. Оказалось, что даже с плохой кредитной историей можно получить займ. Я воспользовался советами по выбору МФО и заполнению заявки, и через короткое время деньги были у меня на карте. Медицинские услуги были оплачены вовремя, и я смог решить свою проблему.

Leave a Reply

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