gpt4 book ai didi

javascript - 在js中从控制台读取和写入

转载 作者:行者123 更新时间:2023-11-28 05:54:28 26 4
gpt4 key购买 nike

我有一个来自 Hacker Rank 的简单问题。

有 N 个字符串。每个字符串的长度不超过 20 个字符。还有Q查询。对于每个查询,都会给您一个字符串,您需要找出该字符串之前出现了多少次。第一行包含 ,字符串的数量。接下来的 N 行每行包含一个字符串。第 N + 2 行包含 ,查询数。以下 Q 行每行包含一个查询字符串。

示例输入

4
aba
baba
aba
xzxb
3
aba
xzxb
ab

示例输出

2
1
0

这是提供的代码,

function processData(input) {
//Enter your code here


}

process.stdin.resume();
process.stdin.setEncoding("ascii");
_input = "";

process.stdin.on("data", function (input) {

_input += input;
});

process.stdin.on("end", function () {
processData(_input);
});

问题的解决办法很简单。初始化一个 HashMap 。根据出现次数输入 HashMap 中 N 个字符串中的值。

var map = {};
if(!map[input])map[input]++;
else map[input] = 1;

然后对于每个查询返回相应键的获取。

问题是我是 javascript 新手,对 Node 一无所知。有人可以帮助我理解代码并帮助我找出必须实例化各个数据结构的范围。

最佳答案

您需要将代码放入:

function processData(input) {
// split your input and access it

//your logic
var map = {};
if(!map[input])map[input]=1;
else map[input] +=1;

//your output
console.log('...');
}

说明

开始从标准输入读取,这样我们就不会退出。

process.stdin.resume();

读取输入数据

process.stdin.on("data", function (input) {

_input += input;
});

数据调用完成后,将触发结束事件。

process.stdin.on("end", function () {
processData(_input);
});

关于javascript - 在js中从控制台读取和写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37815480/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com