john sokpo

Generation

generate functionThu, 06 Jul 2023

Convert a non-negative integer num to its English words representation. Example 1: Input: num = 123 Output: "One Hundred Twenty Three" Example 2: Input: num = 12345 Output: "Twelve Thousand Three Hundred Forty Five" Example 3: Input: num = 1234567 Output: "One Million Two Hundred Thirty Four Thousand Five Hundred Sixty Seven"

class Solution { public String numberToWords(int num) { StringBuilder builder = new StringBuilder(); if (num == 0) { return "Zero"; } String[] unitsName = {"", "Thousand", "Million", "Billion"}; int unitIndex = 0; while (num > 0) { int temp = num % 1000; if (temp != 0) { builder.insert(0, unitsName[unitIndex] + " "); } builder.insert(0, convertToWords(temp)); num = num / 1000; unitIndex++; } return builder.toString().trim(); } /** * Convert 3 digit number to english words * @param num * @return */ private String convertToWords(int num) { StringBuilder builder = new StringBuilder(); String[] numNames = {"", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "

Want to kickstart your project?Use the new AI Studio to create your code