1 条题解
-
0
自动搬运
来自洛谷,原作者为

宝硕
即使是沉重的过去,也要接受它再继续向前迈进。搬运于
2025-08-24 21:07:26,当前版本为作者最后更新于2021-07-13 10:29:41,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
本文提供以下几种语言的题解:C++, NodeJS 。
题面
参见 B2120 单词的长度 。
C++ 题解
使用 C++ STL 中的
string库即可,参见 std::string - cppreference.com。引入
string库的方法:#include <string>,此处需要注意的是应避免与<cstring>与<string.h>这两个文件名混淆。声明
string字符串的方法:string s;。每次使用
cin >> s;读入后输出s.size();就是该单词的长度。关于逗号:可以定义一个
bool类型的flag变量记录是否为第一次输出,如果是第一次则不输出,,其他情况均输出,。代码如下:
#include <bits/stdc++.h> using namespace std; int main() { string s; bool flag = true; while (cin >> s) { if (flag) { flag = false; cout << s.size(); } else { cout << ',' << s.size(); } } return 0; }NodeJS 题解
先使用
fs.readFileSync(0)从标准输入读入数据。读入后使用
toString()方法将其转换为String类型,并使用replace()方法去除多余空格。之后使用
split()方法将其分割成一个数组。统计循环遍历
str数组,并将对应单词的length插入到ans数组末尾。输出时使用
join()方法在每个单词的长度之间插入一个英文逗号。代码如下:
const fs = require('fs') let str = fs.readFileSync(0).toString().replace(/\s+/g, ' ').split(' '); let ans = [] str.forEach(word => { ans.push(word.length); }); process.stdout.write(ans.join(','));提交记录:R53204709
- Update1 at 2021/07/13: 增加了说明。
- Update2 at 2021/07/15: 增加了 NodeJS 语言版本题解。
- 1
信息
- ID
- 6977
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者