Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function secondSolution(num) {
- const isNumeric = (leftInteger) => /^[0-9]*$/.test(leftInteger);
- if (isNumeric(num) === false) {
- throw 'Invaid Argument!';
- }
- const format = {
- under: ['', '일', '이', '삼', '사', '오', '육', '칠', '팔', '구'],
- overTenUnderThousend: ['', '십', '백', '천', ],
- overThousendUnderTrillion: ['', '만', '억', '조'],
- };
- let rlt = [];
- let splitStrByLen = String(num).split('').reverse()
- .join('')
- .match(/.{1,4}/g);
- let rltIdx = 0;
- splitStrByLen.forEach((v, i) => {
- let formatIdx = 0;
- v.split('').forEach((splitValue, splitIdx) => {
- if (typeof (format.under[splitValue]) == 'undefined' || format.under[splitValue]) {
- rlt[rltIdx] = `${format.under[splitValue]}${format.overTenUnderThousend[splitIdx]}`;
- if (formatIdx === 0) {
- rlt[rltIdx] = `${rlt[rltIdx]}${format.overThousendUnderTrillion[i]}`;
- }
- formatIdx++;
- }
- rltIdx++;
- });
- });
- return rlt.reverse().join('');
- }
- const readline = require("readline");
- const rl = readline.createInterface({
- input: process.stdin,
- output: process.stdout
- });
- rl.on("line", function (line) {
- console.log(secondSolution(String(line)));
- rl.close();
- }).on("close", function () {
- process.exit();
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement