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. Another important component is that if you are a senior, travel insurance pertaining to pensioners is something you should really take into consideration. The elderly you are, the more at risk you are for having something bad happen to you while overseas. If you are definitely not covered by a number of comprehensive insurance cover, you could have some serious challenges. Thanks for giving your hints on this weblog.

  2. You’re so interesting! I do not suppose I have read a single thing like this before. So great to discover somebody with unique thoughts on this topic. Seriously.. many thanks for starting this up. This site is something that is required on the internet, someone with some originality.

  3. Hello, i think that i saw you visited my site thus i came to ?return the favor?.I’m attempting to find things to improve my website!I suppose its ok to use some of your ideas!!

  4. В прошлом месяце я определился с тем, что нужно обновить входную дверь в квартире. Зашел на сайт https://dvershik.ru, выбрал модель и заказал установку. Мастера приехали точно в срок, быстро и качественно установили новую дверь. Очень доволен сервисом и результатом – теперь чувствую себя намного безопаснее!

  5. Круизы по Байкалу на теплоходе от “Фаната Байкала” — это уникальная возможность исследовать одно из самых живописных мест на Земле с комфортом и стилем. Наши теплоходы оснащены всем необходимым для полноценного отдыха: от просторных кают до ресторанов с панорамными видами на озеро. Маршруты круизов включают посещение изолированных бухт, экологически чистых пляжей и культурных достопримечательностей региона. Это идеальный выбор для тех, кто ищет расслабляющий отпуск с элементами приключений и эксклюзивного обслуживания.

    Fanatbaikala – тур на байкал из иркутска имеет офисы в Иркутске и Москве. В Иркутске наш офис расположен по адресу ул. Дальневосточная, 146, офис 4, телефон для связи: +7 (3952) 480-539, для заказа туров используйте e-mail: info@fanatbaikala.ru, для вопросов сотрудничества: Partners@fanatbaikala.ru. Московский офис находится на ул. Земляной Вал, д.9, офис 417, с контактным телефоном +7(499) 40-40-538. Оба офиса предоставляют полный спектр услуг по организации туров на Байкал.

  6. I’ve learned several important things via your post. I’d also like to say that there may be situation where you will apply for a loan and do not need a cosigner such as a U.S. Student Aid Loan. However, if you are getting financing through a common loan company then you need to be prepared to have a cosigner ready to assist you to. The lenders can base that decision on a few aspects but the biggest will be your credit worthiness. There are some financial institutions that will in addition look at your work history and make up your mind based on this but in many cases it will be based on on your credit score.

  7. hi!,I like your writing very much! share we communicate more about your post on AOL? I need an expert on this area to solve my problem. Maybe that’s you! Looking forward to see you.

Leave a Reply

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