Count Numbers with N digits which consists of even number of 0’s
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++
#include <bits/stdc++.h>
using namespace std;
int countNumbers( int N)
{
return ( pow (10, N) - 1) - ( pow (10, N) - pow (8, N)) / 2;
}
int main()
{
int n = 2;
cout << countNumbers(n) << endl;
return 0;
}
|
Java
import java.lang.*;
import java.util.*;
class GFG
{
static double countNumbers( int N)
{
return (Math.pow( 10 , N) - 1 ) -
(Math.pow( 10 , N) -
Math.pow( 8 , N)) / 2 ;
}
static public void main (String args[])
{
int n = 2 ;
System.out.println(countNumbers(n));
}
}
|
Python3
def countNumber(n):
return ( pow ( 10 ,n) - 1 ) - ( pow ( 10 ,n) - pow ( 8 ,n)) / / 2
n = 2
print (countNumber(n))
|
C#
using System;
class GFG
{
static double countNumbers( int N)
{
return (Math.Pow(10, N) - 1) -
(Math.Pow(10, N) -
Math.Pow(8, N)) / 2;
}
static public void Main ()
{
int n = 2;
Console.WriteLine(countNumbers(n));
}
}
|
PHP
<?php
function countNumbers( $N )
{
return (pow(10, $N ) - 1) -
(pow(10, $N ) - pow(8, $N )) / 2;
}
$n = 2;
echo countNumbers( $n ), "\n" ;
?>
|
Javascript
<script>
function countNumbers(N)
{
return (Math.pow(10, N) - 1) - (Math.pow(10, N) - Math.pow(8, N)) / 2;
}
var n = 2;
document.write( countNumbers(n));
</script>
|
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
Share your thoughts in the comments
Please Login to comment...