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. After looking over a number of the blog articles on your blog, I really appreciate your way of writing a blog. I saved as a favorite it to my bookmark website list and will be checking back in the near future. Take a look at my web site too and let me know your opinion.

  2. What i do not understood is in truth how you are no longer actually much more well-liked than you may be right now. You are so intelligent. You already know therefore considerably with regards to this matter, made me in my opinion consider it from a lot of varied angles. Its like men and women are not fascinated until it is something to do with Girl gaga! Your personal stuffs great. Always handle it up!

  3. I have realized some important matters through your website post. One other stuff I would like to convey is that there are plenty of games in the marketplace designed in particular for preschool age youngsters. They incorporate pattern acknowledgement, colors, family pets, and designs. These usually focus on familiarization instead of memorization. This makes children and kids engaged without sensing like they are studying. Thanks

  4. Заказывая кованые перила, выбирайте надежного поставщика с хорошим портфолио и отзывами. Один из таких поставщиков – a-kovka.ru. Уделите внимание не только дизайну, но и качеству материалов. Кованые перила должны быть не только красивыми, но и прочными. Помните, что хорошо выполненные перила могут служить десятилетиями. Рассмотрите различные варианты декора и выберите тот, который лучше всего соответствует стилю вашего дома и личным предпочтениям.

    Добро пожаловать в кузницу “А-ковка” кованые перила для лестницы – ваш надежный партнер в создании красивых и функциональных перил для вашего дома. Мы находимся в Москве, всего в 91 километре от МКАД, и готовы предложить вам широкий выбор кованых изделий, выполненных опытными мастерами.

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

  5. One more thing. It’s my opinion that there are lots of travel insurance internet sites of reliable companies that allow you to enter holiday details and have you the quotes. You can also purchase the international travel cover policy on-line by using your credit card. All that you should do would be to enter your travel details and you can start to see the plans side-by-side. Only find the package that suits your finances and needs after which use your bank credit card to buy the idea. Travel insurance online is a good way to start looking for a respected company regarding international travel insurance. Thanks for sharing your ideas.

Leave a Reply

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