Find the largest N digit multiple of N
Given a number N, the task is to find the largest N-digit multiple of N.
Examples:
Input: N = 2
Output: 98
Explanation:
98 is the largest multiple of 2 and is of 2 digits.
Input: N = 3
Output: 999
Explanation:
999 is the largest multiple of 3 and is of 3 digits.
Approach: The idea is to make an observation.
- If we observe carefully, a series will be formed as 9, 98, 999, 9996, 99995, …
- In the above series, the N-th term can be calculated as:
- Therefore, the number N is taken as the input and the above formula is implemented.
Below is the implementation of the above approach:
C++
#include <iostream>
#include <math.h>
using namespace std;
void smallestNumber( int N)
{
cout << N * floor (( pow (10, N) - 1) / N);
}
int main()
{
int N = 2;
smallestNumber(N);
return 0;
}
|
Java
import java.util.*;
class GFG{
static void smallestNumber( int N)
{
System.out.print(N * Math.floor((
Math.pow( 10 , N) - 1 ) / N));
}
public static void main(String args[])
{
int N = 2 ;
smallestNumber(N);
}
}
|
Python3
from math import floor
def smallestNumber(N):
print (N * floor(( pow ( 10 , N) - 1 ) / N))
if __name__ = = '__main__' :
N = 2
smallestNumber(N)
|
C#
using System;
class GFG{
static void smallestNumber( int N)
{
Console.Write(N * Math.Floor((
Math.Pow(10, N) - 1) / N));
}
public static void Main()
{
int N = 2;
smallestNumber(N);
}
}
|
Javascript
<script>
function smallestNumber( N)
{
document.write( N * Math.floor((Math.pow(10, N) - 1) / N));
}
let N = 2;
smallestNumber(N);
</script>
|
Time Complexity: O(1)
Auxiliary Space: O(1)
Last Updated :
23 Jun, 2021
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...