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. Время не ждет, а финансовые потребности могут возникать внезапно. Наш сайт предлагает уникальную возможность быстро получить микрозайм без лишних проверок и бюрократии. Суммы от 1000 до 30000 рублей доступны каждому, кто достиг 18 лет. Просто используйте ваш паспорт для оформления заявки, и получите нужную сумму без задержек. Узнайте больше на нашем ресурсе, где собраны все актуальные предложения МФО и полезные статьи.

    Займы с плохой кредитной историей: начните с чистого листа
    МФО: новые возможности для заемщиков
    Микрозаймы: ваш путь к успеху
    Займы без залога: получите средства сразу
    Займы под ноль процентов: правда ли?

  2. Excellent beat ! I would like to apprentice even as you amend your website, how can i subscribe for a blog site? The account helped me a acceptable deal. I had been tiny bit familiar of this your broadcast offered bright transparent concept

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

    Быстрый займ: когда срочно нужны деньги
    Займ на карту: мгновенное решение
    Займы на любые цели: где найти лучшее предложение
    Не откладывайте мечты: получите займ
    Оформить займ онлайн: процесс шаг за шагом

  4. Датчик схода конвейерной ленты купить smart-engineer.ru

    Предлагаем Вам организацию Smart Engineer, которая реализует различное оборудование для автоматизации бизнеса. В нашем новом мире всё так быстро совершенствуется, что уже совсем скоро машины будут им управлять. Поэтому, пока это не случилось, предлагаем Вам ознакомиться с каталогом оборудования для промышленной автоматизации на сайте smart-engineer.ru уже сегодня.

    По поиску программируемое реле пр200 заходите на наш интернет ресурс. Наша компания предлагает оборудование для промышленной автоматизации, которое включает в себя приборы управления, преобразователи давления, частотные преобразователи для управления электродвигателями, программируемые логические контроллеры, устройства плавного пуска, системы ЧПУ, контролеры машинного зрения и многие, многие другие. Ознакомьтесь с полным списком на представленном сайте.

    Мы уже длительное время осуществляем работу в данной сфере по Удмуртии, Пермскому краю, Татарстану, Башкортостану и Свердловской области. Сегодня один из основных офисов находится по адресу: г. Казань, ул. Сибирский тракт, 34, к. 4, оф. 6. Контактный телефон +7(843)528-05-15 или напишите на нашем сайте.

    Если Вы хотели найти термопара овен в интернете, то Вы на верном пути. На smart-engineer.ru есть всё по этому и другим вопросам. Мы рады предложить нашим клиентам широкий качественный спектр услуг, следуя только новейшим тенденциям автоматизации. Мы открыты к общению и с радостью ответим на оставшиеся вопросы, проконсультируем и направим в верное русло. А ещё, мы полагаемся на успешное и длительное сотрудничество.

  5. Частотные преобразователи smart-engineer.ru

    Представляем Вам фирму Smart Engineer, которая продает различное оборудование для автоматизации бизнеса. В нашем современном мире всё так стремительно прогрессирует, что уже совсем скоро машины будут им управлять. Поэтому, пока это не произошло, рекомендуем Вам осведомиться с каталогом оборудования для промышленной автоматизации на сайте smart-engineer.ru прямо сегодня.

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

    Мы уже длительное время работаем в данной сфере по Удмуртии, Пермскому краю, Татарстану, Башкортостану и Свердловской области. Сейчас один из главных офисов находится по адресу: г. Пермь, ул. Борцов Революции, д. 8 А, оф. 223. Звоните по телефону +7(342)259-29-03 или напишите на нашем сайте.

    Если Вы планировали найти преобразователи частоты innovert серии itd в интернете, то Вы на нужном пути. На smart-engineer.ru есть всё по данному и другим вопросам. Мы счастливы предложить нашим заказчикам большой высококачественный спектр услуг, следуя только инновационным тенденциям автоматизации. Мы открыты к общению и с радостью дадим ответы на любые вопросы, проконсультируем и направим в правильное русло. А ещё, мы надеемся на результативное и длительное взаимодействие.

  6. One thing is always that one of the most widespread incentives for making use of your credit card is a cash-back or even rebate offer. Generally, you’ll have access to 1-5 back for various expenditures. Depending on the credit cards, you may get 1 returning on most expenditures, and 5 again on buying made from convenience stores, filling stations, grocery stores plus ‘member merchants’.

  7. Today, I went to the beach front with my children. I found a sea shell and gave it to my 4 year old daughter and said “You can hear the ocean if you put this to your ear.” She placed the shell to her ear and screamed. There was a hermit crab inside and it pinched her ear. She never wants to go back! LoL I know this is completely off topic but I had to tell someone!

Leave a Reply

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