Given an array of 1 and 0’s, where Ai = 1 denotes that ith day was a rainy day and Ai = 0 denotes it was not a rainy day. The task is to find the probability that the N+1th was a rainy day.
Examples:
Input: a[] = {0, 0, 1, 0}
Output: .25
Since one day was rainy out of 4 days, hence the probability on
5th day will be 0.25
Input: a[] = {1, 0, 1, 0, 1, 1, 1}
Output: 0.71
The probability of rain on N+1th day can be found out using the below formula:
Probability = number of rainy days / total number of days.
First, count the number of 1’s and then the probability will be the number of 1’s divided by N i.e. count / N.
Below is the implementation of the above approach:
C++
// C++ code to find the probability of rain// on n+1-th day when previous day's data is given#include <bits/stdc++.h>using namespace std;// Function to find the probabilityfloat rainDayProbability(int a[], int n){ float count = 0, m; // count 1 for (int i = 0; i < n; i++) { if (a[i] == 1) count++; } // find probability m = count / n; return m;}// Driver Codeint main(){ int a[] = { 1, 0, 1, 0, 1, 1, 1, 1 }; int n = sizeof(a) / sizeof(a[0]); cout << rainDayProbability(a, n); return 0;} |
Java
// Java code to find the// probability of rain// on n+1-th day when previous // day's data is givenimport java.io.*;import java.util.*;class GFG{ // Function to find // the probabilitystatic float rainDayProbability(int a[], int n){ float count = 0, m; // count 1 for (int i = 0; i < n; i++) { if (a[i] == 1) count++; } // find probability m = count / n; return m;}// Driver Codepublic static void main(String args[]){ int a[] = { 1, 0, 1, 0, 1, 1, 1, 1 }; int n = a.length; System.out.print(rainDayProbability(a, n));}} |
Python 3
# Python 3 program to find# the probability of rain # on n+1-th day when previous # day's data is given # Function to find the probability def rainDayProbability(a, n) : # count occurrence of 1 count = a.count(1) # find probability m = count / n return m# Driver codeif __name__ == "__main__" : a = [ 1, 0, 1, 0, 1, 1, 1, 1] n = len(a) # function calling print(rainDayProbability(a, n))# This code is contributed# by ANKITRAI1 |
C#
// C# code to find the// probability of rain// on n+1-th day when // previous day's data// is givenusing System;class GFG{ // Function to find // the probabilitystatic float rainDayProbability(int []a, int n){ float count = 0, m; // count 1 for (int i = 0; i < n; i++) { if (a[i] == 1) count++; } // find probability m = count / n; return m;}// Driver Codepublic static void Main(){ int []a = {1, 0, 1, 0, 1, 1, 1, 1}; int n = a.Length; Console.WriteLine(rainDayProbability(a, n));}}// This code is contributed // by inder_verma. |
PHP
<?php// PHP code to find the // probability of rain// on n+1-th day when // previous day's data // is given// Function to find// the probabilityfunction rainDayProbability($a, $n){ $count = 0; $m; // count 1 for ($i = 0; $i <$n; $i++) { if ($a[$i] == 1) $count++; } // find probability $m = $count / $n; return $m;}// Driver Code$a = array(1, 0, 1, 0, 1, 1, 1, 1);$n = count($a);echo rainDayProbability($a, $n);// This code is contributed // by inder_verma.?> |
Javascript
<script>// JavaScript code to find the probability of rain// on n+1-th day when previous day's data is given// Function to find the probabilityfunction rainDayProbability(a,n){ let count = 0, m; // count 1 for (let i = 0; i < n; i++) { if (a[i] == 1) count++; } // find probability m = count / n; return m;}// Driver Code let a = [1, 0, 1, 0, 1, 1, 1, 1 ]; let n = a.length; document.write(rainDayProbability(a,n)); // This code contributed by Rajput-Ji </script> |
0.75
Time Complexity: O(N)
Auxiliary Space: O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

… [Trackback]
[…] Find More Info here on that Topic: geeksforgeeks.org/probability-of-rain-on-n-1th-day/ […]
… [Trackback]
[…] Find More to that Topic: geeksforgeeks.org/probability-of-rain-on-n-1th-day/ […]
… [Trackback]
[…] Find More on on that Topic: geeksforgeeks.org/probability-of-rain-on-n-1th-day/ […]