Open In App

Count Numbers with N digits which consists of even number of 0’s

Improve
Improve
Like Article
Like
Save
Share
Report

Given a number N. The task is to find the count of numbers which have N digits and even number of zeroes.
Note: The number can have preceding 0’s.
Examples
 

Input: N = 2
Output: Count = 81 
Total 2 digit numbers are 99 considering 1 as 01.
2 digit numbers are 01, 02, 03, 04, 05.... 99
Numbers with odd 0's are 01, 02, 03, 04, 05, 06, 07, 08, 09
10, 20, 30, 40, 50, 70, 80, 90 i.e. 18
The rest of the numbers between 01 and 99 will 
do not have any zeroes and zero is also an even number.
So, numbers with even 0's are 99 - 18 = 81.

Input: N = 3
Output: Count = 755

Approach: The idea is to find the Count Numbers with N digits which consists of odd number of 0’s and subtract it from the total number with N digits to get the number with even 0’s.
 

C++




// C++ program to count numbers with N digits
// which consists of odd number of 0's
#include <bits/stdc++.h>
using namespace std;
 
// Function to count Numbers with N digits
// which consists of odd number of 0's
int countNumbers(int N)
{
    return (pow(10, N) - 1) - (pow(10, N) - pow(8, N)) / 2;
}
 
// Driver code
int main()
{
    int n = 2;
 
    cout << countNumbers(n) << endl;
 
    return 0;
}


Java




// Java program to count numbers
// with N digits which consists
// of odd number of 0's
import java.lang.*;
import java.util.*;
 
class GFG
{
     
// Function to count Numbers with
// N digits which consists of odd
// number of 0's
static double countNumbers(int N)
{
    return (Math.pow(10, N) - 1) -
           (Math.pow(10, N) -
            Math.pow(8, N)) / 2;
}
 
// Driver code
static public void main (String args[])
{
    int n = 2;
    System.out.println(countNumbers(n));
}
}
 
// This code is contributed
// by Akanksha Rai


Python3




# Python3  program to count numbers with N digits
#  which consists of odd number of 0's
 
# Function to count Numbers with N digits
#  which consists of odd number of 0's
def countNumber(n):
 
    return (pow(10,n)-1)- (pow(10,n)-pow(8,n))//2
 
 
# Driver code
n = 2
print(countNumber(n))
 
# This code is contributed by Shrikant13


C#




// C# program to count numbers
// with N digits which consists
// of odd number of 0's
using System;
 
class GFG
{
     
// Function to count Numbers with
// N digits which consists of odd
// number of 0's
static double countNumbers(int N)
{
    return (Math.Pow(10, N) - 1) -
           (Math.Pow(10, N) -
            Math.Pow(8, N)) / 2;
}
 
// Driver code
static public void Main ()
{
    int n = 2;
    Console.WriteLine(countNumbers(n));
}
}
 
// This code is contributed by ajit


PHP




<?php
// PHP program to count numbers with N digits
// which consists of odd number of 0's
 
// Function to count Numbers with N digits
// which consists of odd number of 0's
function countNumbers($N)
{
    return (pow(10, $N) - 1) -
           (pow(10, $N) - pow(8, $N)) / 2;
}
 
// Driver code
$n = 2;
echo countNumbers($n),"\n";
 
// This code is contributed by akt_mit
?>


Javascript




<script>
 
// Javascript program to count numbers with N digits
// which consists of odd number of 0's
 
// Function to count Numbers with N digits
// which consists of odd number of 0's
function countNumbers(N)
{
    return (Math.pow(10, N) - 1) - (Math.pow(10, N) - Math.pow(8, N)) / 2;
}
 
// Driver code
var n = 2;
document.write( countNumbers(n));
 
</script>


Output: 

81

 

Time Complexity: O(logN), since the pow function takes (log N) times to find the power to base N.

Auxiliary Space: O(1), since no extra space has been taken.

Note: Answer can be very large, so for N greater than 9, use modular exponentiation.
 



Last Updated : 15 Sep, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads