TypeScript > 牛客OJ在线编程常见输入输出练习场

文章目录

牛客OJ在线编程常见输入输出练习场

https://ac.nowcoder.com/acm/contest/5647

A A+B(1)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const nums = line.split(' ').map(Number);
    console.log(nums[0] + nums[1]);
});

B A+B(2)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

const lines: string[] = [];
rl.on('line', (line) => {
    lines.push(line);
}).on('close', () => {
    const t = parseInt(lines[0]);
    for (let i = 1; i <= t; i++) {
        const nums = lines[i].split(' ').map(Number);
        console.log(nums[0] + nums[1]);
    }
});

C A+B(3)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const nums = line.split(' ').map(Number);
    if (nums[0] === 0 && nums[1] === 0) {
        rl.close();
        return;
    }
    console.log(nums[0] + nums[1]);
});

D A+B(4)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const nums = line.split(' ').map(Number);
    if (nums[0] === 0) {
        rl.close();
        return;
    }
    const sum = nums.slice(1).reduce((a, b) => a + b, 0);
    console.log(sum);
});

E A+B(5)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

const lines: string[] = [];
rl.on('line', (line) => {
    lines.push(line);
}).on('close', () => {
    const t = parseInt(lines[0]);
    for (let i = 1; i <= t; i++) {
        const nums = lines[i].split(' ').map(Number);
        const sum = nums.slice(1).reduce((a, b) => a + b, 0);
        console.log(sum);
    }
});

F A+B(6)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const nums = line.split(' ').map(Number);
    const sum = nums.slice(1).reduce((a, b) => a + b, 0);
    console.log(sum);
});

G A+B(7)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const sum = line.split(' ').map(Number).reduce((a, b) => a + b, 0);
    console.log(sum);
});

H 字符串排序(1)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

const lines: string[] = [];
rl.on('line', (line) => {
    lines.push(line);
}).on('close', () => {
    const strs = lines[1].split(' ');
    strs.sort();
    console.log(strs.join(' '));
});

I 字符串排序(2)

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const strs = line.split(' ');
    strs.sort();
    console.log(strs.join(' '));
});

J 字符串排序(3)

链接:https://ac.nowcoder.com/acm/contest/5647/J

输入描述:

多个测试用例,每个测试用例一行。

每行通过,隔开,有n个字符,n<100

输出描述:

对于每组用例输出一行排序后的字符串,用','隔开,无结尾空格

typescript 复制代码
import * as readline from 'readline';

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.on('line', (line) => {
    const strs = line.trim().split(',');
    strs.sort();
    console.log(strs.join(','));
});

TypeScript输入输出要点总结

场景 写法
引入readline模块 import * as readline from 'readline';
创建接口 const rl = readline.createInterface({input: process.stdin, output: process.stdout});
逐行读取 rl.on('line', (line) => {...})
读取完成回调 rl.on('close', () => {...})
按空格分割 line.split(' ')
转换为整数数组 .map(Number)
求和 nums.reduce((a, b) => a + b, 0)
字符串排序 strs.sort()
用分隔符连接 strs.join(' ')
相关推荐
mCell2 小时前
从零构建一个 Mini Claude Code:面向初学者的 Agent 开发实战指南
typescript·agent·claude
敲敲敲敲暴你脑袋5 小时前
写个添加注释的vscode插件
javascript·typescript·visual studio code
Wect6 小时前
LeetCode 207. 课程表:两种解法(BFS+DFS)详细解析
前端·算法·typescript
昨晚我输给了一辆AE861 天前
为什么现在不推荐使用 React.FC 了?
前端·react.js·typescript
Wect1 天前
LeetCode 130. 被围绕的区域:两种解法详解(BFS/DFS)
前端·算法·typescript
Dilettante2581 天前
这一招让 Node 后端服务启动速度提升 75%!
typescript·node.js
jonjia2 天前
模块、脚本与声明文件
typescript
jonjia2 天前
配置 TypeScript
typescript
jonjia2 天前
TypeScript 工具函数开发
typescript
jonjia2 天前
注解与断言
typescript