zoukankan      html  css  js  c++  java
  • PAT-1002 写出这个数 (20分) JavaScript(node)

    读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

    输入格式:

    每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10100​​ 。

    输出格式:

    在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。

    输入样例:

    1234567890987654321123456789
    

    输出样例:

    yi san wu
    

    解题思路:

    • 通过读取题干信息,很容易可以得知,此题先求和

    • 再将得到的 sum 值,按位翻译,定义一个转义数组 0-9,汉字拼音

    • 而每个数字正好可以对应转义数组的下标

    JavaScript(node 12.18.4)

    var buf = "";
    process.stdin.on("readable", function () {
        var chunk = process.stdin.read();
        if (chunk) buf += chunk.toString();
    });
    
    process.stdin.on("end", function () {
        const a = compute(buf);
        console.log(a);
    });
    var count = 0 ;
    function compute(num) {
        num = num.replace('
    ','')
        var tmp = (""+num).split('');
        var sum = 0
        for (var i = 0; i < tmp.length; i++) {
            sum += parseInt(tmp[i])
        }
        var sumArr = (""+sum).split('');
        var dirn = ['ling','yi','er','san','si','wu','liu','qi','ba','jiu']
        var word = ''
        for(var i =0;i<sumArr.length;i++){
            word += i == sumArr.length -1 ? dirn[sumArr[i]] : dirn[sumArr[i]] + ' '
        }
        return word;
    };
    
  • 相关阅读:
    bzoj4028 [HEOI2015]公约数数列
    bzoj4766 文艺计算姬
    bzoj4241 历史研究
    bzoj3744 Gty的妹子序列
    bzoj4540 [Hnoi2016]序列
    uoj#228 基础数据结构练习题
    bzoj2467 [中山市选2010]生成树
    bzoj2125 最短路
    bzoj4800 [Ceoi2015]Ice Hockey World Championship
    bzoj2463 [中山市选2009]谁能赢呢?
  • 原文地址:https://www.cnblogs.com/echoyya/p/14251293.html
Copyright © 2011-2022 走看看