赛码网输入输出问题(js v8)

我觉得文档上写的很不清楚,看了我半天才看懂

赛码网OJ说明文档:

对于js v8引擎来说,操作是这样的

读取相关

read_line()

功能:读取一行输入

解释:将读取至多1024个字符,当还未达到1024个时如果遇到回车或结束符,提前结束。

说明:读取多行最简单的办法是while((line = read_line()) != '')


gets(n)

功能:读取n个字符

解释:将读取至多n个字符,当还未达到n个时如果遇到回车或结束符,会提前结束。

说明:回车符可能会包含在返回值中。****


readInt()

功能:读取一个长整数


readDouble()

功能:读取一个浮点型


输出相关

printsth(sth, …)

说明:不加回车的输出

解释:往控制台输出sth,当有多个参数时,空格分隔;最后不加回车。


console.log(sth, …)

说明:带回车的输出

解释:往控制台输出sth,当有多个参数时,空格分隔;最后加回车。


好了 大概就是这些

但是我们输出的时候一般使用conssole.log()就好了

毕竟学前端的对这个api应该已经刻骨铭心了


那我们就拿赛码网的一个例题来写一下

这里是读取多行输入,我们写在while条件语句里

while((line = read_line()) != '')这样就可以读取多行输入了

var line;
let getSum = (m,n) => {let sum = 0;while(n) {sum += m;m = Math.sqrt(m);n--;}return sum.toFixed(2) ;
}while((line = read_line()) != ''){//读取let arr = line.split(' ');let m = parseInt(arr[0]);let n = parseInt(arr[1]);let sum = getSum(m, n);console.log(sum);//输出
}

另外对于只有一组输入的

举例,输入第一行是数字n,之后跟着n行数据。

这种情况只需要先读一个 n,然后再循环读n次的数据即可。

let n = readInt();
let arr = [];
for(let i = 0; i < n; i++)
{arr[i] = read_line();
}

赛码网的笔试算法题大都都是支持本地IDE的,

但是对于我们前端来说,在vscode上进行输入样例很麻烦

甚至我对这方面的东西非常生疏

现在我们有一个很好的办法来配置vscode,让我们的vscode也能方便的测试案例

使用了这个方法后 我们能直接将本地的测试好的代码贴到赛码网上,不需要再进行其他的修改

有一个很好用的npm包readline-sync

接下来我们安装他

在本地ide终端上执行以下指令

npm install readline-sync

然后在文件中引入模块并重命名

var __readline = require('readline-sync')
__readline.setDefaultOptions({prompt: ''})
var read_line = __readline.prompt

这里赛码网上读取的方法是read_line 所以我们也重命名为read_line

然后我们就可以愉快的在vscode上写代码了

下面再演示一下在vscode上写刚刚的例题:

  1. 创建一个js文件

​ 2.编写代码

//导入包
var __readline = require('readline-sync')
__readline.setDefaultOptions({prompt: ''})
var read_line = __readline.prompt//下面的代码是我们需要贴到赛码网编译器的
var line;
let getSum = (m,n) => {let sum = 0;while(n) {sum += m;m = Math.sqrt(m);n--;}return sum.toFixed(2) ;
}while((line = read_line()) != ''){let arr = line.split(' ');let m = parseInt(arr[0]);let n = parseInt(arr[1]);let sum = getSum(m, n);console.log(sum);
}

​ 3.在终端中执行node .\赛码网输入输出测试.js

​ 上面是node指令,表示执行某一个文件 就不多说了

​ 这个时候我们就可以输入样例了

​ 4.输入样例

可以看到已经输出了正确的结果

测试没有问题后,我们就可以把代码放到赛码网编译器执行了

赛码网输入输出(js v8)问题并配置赛码网vscode本地环境相关推荐

  1. 6个网页背景特效源码 canvas+three.js科技贴图 webgl源码

    隧道穿梭特效 粒子矩阵特效 几何随机变换特效 下载地址: 6个网页背景特效源码 canvas+three.js科技贴图 webgl源码-素材美

  2. 无线网网速太慢如何设置服务器,苹果手机网速慢怎么办 iphone手机配置DNS提升网速方法...

    iPhone网速慢怎么办?如果网络本身没有问题,很可能是DNS的问题,一般可以通过配置DNS提升网速.尤其是一些中小运营商或者一些比较偏的地方,由于DNS服务器不太稳定,容易导致iPhone上网卡顿, ...

  3. iphone如何查看dns延迟_苹果手机网速慢怎么办 iphone手机配置DNS提升网速方法

    3.最后手动更改DNS服务器地址即可,下面以阿里公共DNS为例,修改完成后,点击右上角的「存储」即可完成设置.之后再去刷头条.网友.微博看看是不是变快了呢? 如果修改DNS,依然无法解决iPhone网 ...

  4. HTML网页设计结课作业~仿蘑菇街商城网站源码(HTML+CSS+JS)

    HTML网页设计结课作业~仿蘑菇街商城网站源码(HTML+CSS+JS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的总数量太多?没有合适 ...

  5. HTML期末大作业~ 明星林依晨(7页)带留言 学生网页设计作业源码(HTML+CSS+JS)

    HTML期末大作业~ 明星林依晨(7页)带留言 学生网页设计作业源码(HTML+CSS+JS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求 ...

  6. web课程设计网页规划与设计~时尚服装购物商城模板html源码(HTML+CSS+JS)

    HTML网页设计结课作业~橙色时尚服装购物商城模板html源码 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的总数量太多?没有合适的模板?等 ...

  7. HTML期末大作业~ 海贼王6页代码质量好~ 学生网页设计作业源码(HTML+CSS+JS)

    HTML期末大作业~ 海贼王6页代码质量好~ 学生网页设计作业源码(HTML+CSS+JS) 临近期末, 你还在为HTML网页设计结课作业,老师的作业要求感到头大?HTML网页作业无从下手?网页要求的 ...

  8. js牛客网、赛码网输入输出

    js牛客网.赛码网输入输出 牛客网在线判题系统JavaScript(V8)使用 输入 单行输入 只有一行输入或者一个 var line = read_line(); 只有一行数组 var line = ...

  9. 赛码网输入输出总结+真题演练

    赛码网输入输出总结 前言 类型一:测试组数不固定,每组三行数据 踩坑记录1 踩坑记录2 类型2 测试组数不定,输入数据中有指定行数的多行输入(赛码网找老乡题最完美答案) 类型三:一组数据,有指定行数的 ...

  10. (附源码)node.js中小学生中文写作网 毕业设计 250623

    基于node.js中小学生中文写作网 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以 ...

最新文章

  1. S - Extended Traffic LightOJ - 1074
  2. MySQL创建视图(CREATE VIEW)
  3. 一文搞定JS事件基础与进阶
  4. class字节码文件中的常量池结构详解
  5. Oracle表连接深入浅出
  6. JQuery中的元素选择器
  7. 此项目的默认Web访问模式设置为文件共享, 但是无法从路径(此为转贴)
  8. 搜索场景下的智能推荐演变之路
  9. Oracle执行外部文件:
  10. linux硬连接脚本,linux 硬链接和软链接深入理解
  11. 小猿圈python之python期末考试测试题(二)_小猿圈python之练习题
  12. Ceylon 1.0.0
  13. [软件发布]可媲美EndNote的文献管理软件与论文写作辅助软件--RefNavigator
  14. 深度学习涉及到的线性代数知识点总结(二)
  15. office怎么像wps一样多栏_WPS文档分栏设置,让排版更完美 Word2010如何分两栏、三栏、多栏技巧...
  16. 一个vue项目同时兼容pc和移动端
  17. 网络安全之黑客入侵的步骤
  18. 如何实现算法中的公平性
  19. java使用poi操作world生成饼图,柱状图,折线图,组合图:二
  20. 实现PPT的在线预览(动态,及转PDF)

热门文章

  1. openwrt校园网自动登录且断网重连
  2. 决胜B端(一)概述篇-走进B端
  3. Windows 10实用优化辅助工具
  4. linux sed -i 命令
  5. es - elasticsearch mapping - parameters - norms
  6. 周期串(Periodic Strings)
  7. android实现开机自动运行程序,Android编程实现应用程序开机自启动的方法
  8. Qt深入浅出(一) 从零开始写Qt应用
  9. 关于JS获取网页地址并截取其中wxid
  10. 【2019.05.23】JS逆向——破解裁判文书网参数(vl5x,guid )爬虫 超级详细