Problem
The car registering system of a city N assigns two types of numbers −
The Customer ID − a natural number between 0 and 17558423 inclusively, which is assigned to the car buyers in the following order: the first customer receives ID 0, the second customer receives ID 1, the third customer receives ID 2, and so on;
Number Plate − assigned to the car and contains the series ( three Latin lowercase letters from a to z) and the serial number (three digits from 0 to 9).
Example − aaa001. Each Number Plate is related to the given Customer ID. For example: Number Plate aaa001 is related to Customer ID 0; Number Plate aaa002 is related to Customer ID 1, and so on.
We are required to write a JavaScript function that takes in the customerID and calculates the Number Plate corresponding to this ID and returns it as a string.
Example
Following is the code −
const id = 545664;
const findNumberPlate = (id = 0) => {
const letters = 'abcdefghijklmnopqrstuvwxyz';
let num = String(id % 999 + 1);
if(num.length !== 3);
while(num.length !== 3){
num = '0' + num;
};
const l = Math.floor(id / 999);
return letters[l % 26] + letters[(Math.floor(l / 26)) % 26] + letters[(Math.floor(l / (26 * 26))) % 26] + num;
};
console.log(findNumberPlate(id));Output
Following is the console output −
ava211