开心还是难过

26 阅读1分钟

题目描述

牛牛经常用":−)"表示开心,用字符str包含":-(" 表示难过;
现在输入牛牛发出的一句话,请你判断牛牛是否开心? 链接:ac.nowcoder.com/acm/contest…

解题思路

比较简单 用正则做匹配获取开心和难过的字符次数就可以

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void (async function () {
    // Write your code here
    let params = [];
    while ((line = await readline())) {
        let tokens = line.split(" ");
        // let a = parseInt(tokens[0]);
        // let b = parseInt(tokens[1]);
        // console.log(a + b);
        params.push(tokens);
    }
    // console.log(params)
    let str = params[0].join("");
    // console.log(str)
    // console.log(str)
    let smiles = str.matchAll(/:-\)/g);
    let unHappy = str.matchAll(/:-\(/g);
    let smileCount = 0;
    let unHappyCount = 0;
    for (let smile of smiles) {
        // console.log(smile)
        smileCount++;
    }
    for (let unhappy of unHappy) {
        // console.log(unhappy)
        unHappyCount++;
    }
    // console.log(smileCount,unHappyCount)
    if (smileCount === 0 && unHappyCount === 0) {
        console.log("None");
    }
    if (smileCount === unHappyCount && smileCount != 0) {
        console.log("Just so so");
    }
    if (smileCount > unHappyCount) {
        console.log("Happy");
    }
    if (smileCount < unHappyCount) {
        console.log("Sad");
    }
})();