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(' ')
相关推荐
xiaoxue..1 天前
Nest.js 框架 企业级开发通关手册
面试·typescript·node.js·开发框架·nest.js
美酒没故事°1 天前
vue3拖拽+粘贴的综合上传器
前端·javascript·typescript
南村群童欺我老无力.2 天前
Flutter 框架跨平台鸿蒙开发 - 打造安全可靠的密码生成器,支持强度检测与历史记录
flutter·华为·typescript·harmonyos
南村群童欺我老无力.2 天前
Flutter 框架跨平台鸿蒙开发 - 开发二维码生成器与扫描器
flutter·华为·typescript·harmonyos
VT.馒头2 天前
【力扣】2637. 有时间限制的 Promise 对象
前端·javascript·leetcode·typescript
VT.馒头2 天前
【力扣】2631. 分组
javascript·算法·leetcode·typescript
yyt3630458413 天前
TypeScript { [key: string]: unknown } 索引签名写法和 Record 替代
前端·javascript·vue.js·typescript·ecmascript·es6
前端小趴菜053 天前
TypeScript
前端·typescript
Irene19913 天前
Vue3 中 PropType 的使用指南
typescript·proptype
孟无岐3 天前
【Laya】Animator2D 使用指南
typescript·游戏引擎·游戏程序·laya