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(' ')
相关推荐
律宏阔7 小时前
微信小程序 + Taro 从 ESLint 迁移到 Oxlint 让项目代码检查速度提升近 12 倍
前端·typescript·eslint
瓦瓦gogo8 小时前
从一个 TypeScript 函数开始理解 MCP 协议
linux·ubuntu·typescript
ZhengEnCi1 天前
Hono 4 多库多模型服务的企业级 Monorepo 目录结构:npm workspaces 与 Turborepo 该怎么分层
typescript
浪遏2 天前
从命令到工作流:juejin-cli 如何让写作自动化更可靠
typescript
浪遏2 天前
07|网页上看着正常,导出的 PDF 为什么还会变样
typescript
浪遏2 天前
03|自动保存真正难的部分,是保存期间又发生了修改
typescript
浪遏2 天前
04|同一篇资料,怎样同时交给编辑器、搜索和 AI
typescript
浪遏2 天前
09|让 Mermaid 和 HTML 成为可编辑内容块
typescript
️公子3 天前
可插拔 13 款实时棋牌对战平台实践:房间容器、Plugin SDK 与幂等账本
websocket·typescript·游戏开发·monorepo·插件架构·棋牌平台·实时对战
FungLeo3 天前
成为全栈·Vue 管理后台篇·Vue3 + Vite + Naive UI:后台工程基座怎么搭
前端·vue.js·ui·typescript·vite·前端工程化·biome