js 习题 3

文章目录

  • 绪论
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10 求最长公共后缀
  • 11
  • 12
  • 13 最大公约数
  • 14
  • 15
  • 结语

绪论

『虽有遗憾,绝不后悔。』—— 「古剑奇谭」

1

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let X=buf.split("\n").map(x=>{return parseInt(x)});for(let i=0;i<10;i++){if(X[i]<=0){X[i]=1;}console.log(`X[${i}] = ${X[i]}`);}
});

2

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let lines=buf.split("\n");let L=parseInt(lines[0]);let C=lines[1];let d=[];for(let i=0;i<12;i++){d.push(lines[i+2].split(" ").map(x=>{return parseFloat(x)}));}let sum=0;for(let i=0;i<12;i++){sum+=d[L][i];}if(C==="M"){sum/=12;}console.log(`${sum.toFixed(1)}`);
});

js 原来每一行后面都可以不加分号

3

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let ns=buf.split("\n").map(x=>{return parseInt(x)});for(let n of ns){if(n===0){break;}for(let i=0;i<n;i++){let lines="";for(let j=0;j<n;j++){lines+=`${Math.min(i+1,n-i,j+1,n-j)} `;}console.log(lines);}console.log();}
});

4

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let line=buf.split("\n");let c=line[0];let d=[];for(let i=0;i<12;i++){d.push(line[i+1].split(" ").map(x=>{return parseFloat(x)}));}let sum=0;let cnt=0;for(let i=0;i<12;i++){for(let j=0;j<=10-i;j++){sum+=d[i][j];cnt++;}}if(c==="M"){sum/=cnt;}console.log(`${sum.toFixed(1)}`);
});

5

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let [n,m]=buf.split(" ").map(x=>{return parseInt(x)});let res=[];for(let i=0;i<n;i++){res[i]=[];for(let j=0;j<m;j++){res[i].push(0);}}let dx=[-1,0,1,0];let dy=[0,1,0,-1];let x=0,y=0,d=1;for(let i=1;i<=n*m;i++){res[x][y]=i;let a=x+dx[d],b=y+dy[d];if(a<0||b<0||a>=n||b>=m||res[a][b]){d=(d+1)%4;a=x+dx[d],b=y+dy[d];}x=a,y=b;}for(let i=0;i<n;i++){let line="";for(let j=0;j<m;j++){line+=`${res[i][j]} `;}console.log(line);}
});

6

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let str=buf.split("\n")[0];console.log(str.length);
});

7

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let str=buf.split('\n')[0];let cnt={};for(let s of str){if(s in cnt){cnt[s]++;}else{cnt[s]=1;}}for(let c of str){if(cnt[c]===1){console.log(c);return;}}console.log("no");
});

8

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let [str,a,b]=buf.split('\n');let ans="";let words=str.split(" ");for(let w of words){if(w===a){ans+=b+" ";}else{ans+=w+" ";}}console.log(ans);
});

9

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});process.stdin.on("end",function(){let words=buf.split("\n")[0].split(" ");words.reverse();let ans="";for(let word of words){ans+=word+" ";}console.log(ans);
});

10 求最长公共后缀

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let reverse=(str)=>{//自己定义一个反转字符串的函数return str.split('').reverse().join('');//表示把一个字符串先拆分成数组,//逆序,再拼接成字符串
}process.stdin.on("end",function(){let lines=buf.split("\n");//去掉回车for(let i=0;i<lines.length;){//把输入分成多组let n=parseInt(lines[i]);//求这一组测试数据有多少个单词if(n===0){break;}//结束输入i++;//跳过 nfor(let j=0;j<n;j++){//处理的是从第一个单词到第 n 个单词lines[i+j]=reverse(lines[i+j]);//调用自己定义的函数//反转这个字符串}let res="";//记录最长公共前缀(本来是求最长公共后缀)//现在逆序之后就是求最长公共前缀了for(let k=0;k<lines[i].length;k++){let is_same=true;//判断当前循环的对应字母是不是相等的for(let j=1;j<n;j++){//从下一个单词的对应字母开始比较//比较的是每一个单词的对应位置的字母,只比较一个字母if(lines[i+j][k]!==lines[i][k]){is_same=false;//标记为不相等,表示最长的公共前缀到这里就结束了break;//跳出循环}}if(is_same){res+=lines[i][k];//把答案加上当前的字母}else{break;//跳出循环}}i+=n;//每一次要跳过 n 个单词console.log(reverse(res));//前面把字符串逆序了,现在需要还原}
});

11

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let reverse=(str)=>{//自己定义一个反转字符串的函数return str.split('').reverse().join('');//表示把一个字符串先拆分成数组,//逆序,再拼接成字符串
}let max=(x,y)=>{return x>y?x:y;
}process.stdin.on("end",function(){let [x,y]=buf.split(" ").map(x=>{return parseInt(x)});console.log(max(x,y));
});

12

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let print2D=(a,row,col)=>{//定义一个函数,数组,行数,列数for(let i=0;i<row;i++){console.log(a[i].join(" "));//把每一行数组按照空格连接成字符串}
}process.stdin.on("end",function(){let lines=buf.split("\n");//按换行分隔开let [n,m]=lines[0].split(" ").map(x=>{return parseInt(x)});//把行数和列数提取出来let a=[];//数组for(let i=0;i<n;i++){//遍历每一行a.push(lines[i+1].split(" ").map(x=>{return parseInt(x)}));//从第一行开始,因为第 0 行是行数和列数//把每一行的数字按照空格隔开,插入到数组里面}print2D(a,n,m);//调用自己定义的函数});

13 最大公约数

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let gcd=(a,b)=>{return b?gcd(b,a%b):a;
}process.stdin.on("end",function(){let [a,b]=buf.split(" ").map(x=>{return parseInt(x)});console.log(gcd(a,b));});

14

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let bubble_sort=(q,l,r)=>{for(let i=r;i>l;i--){for(let j=l;j<i;j++){if(q[j]>q[j+1]){[q[j],q[j+1]]=[q[j+1],q[j]];}}}
}process.stdin.on("end",function(){let lines=buf.split("\n");let [n,l,r]=lines[0].split(" ").map(x=>{return parseInt(x)});let q=lines[1].split(" ").map(x=>{return parseInt(x)});bubble_sort(q,l,r);console.log(q.join(" "));
});

15

let buf="";process.stdin.on("readable",function(){let chunk=process.stdin.read();if(chunk){buf+=chunk.toString();}
});let path=[];
let st=[];let dfs=(u,n)=>{if(u===n){console.log(path.join(" "));}else{for(let i=1;i<=n;i++){if(!st[i]){path.push(i);st[i]=true;dfs(u+1,n);st[i]=undefined;path.pop();}}}
};process.stdin.on("end",function(){let n=parseInt(buf);dfs(0,n);
});

结语

『一点星光,在心上就能反射出太阳。』—— 学而思「星光效应」

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3268085.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Linux下git入门操作

0.创建仓库 可以按这个配置来&#xff0c;.gitignore中存放了上传时忽略的文件类型后缀。 1.clone仓库 在gitee上创建好仓库&#xff0c;点击克隆/下载&#xff0c; 复制地址fyehong/Linux_notes 。 在所需的文件夹中放置仓库。比如我在文件夹lesson9下存储仓库。就在less…

MySQL练手 --- 1141. 查询近30天活跃用户数

题目链接&#xff1a;1141. 查询近30天活跃用户数 思路&#xff1a; 题目要求&#xff1a;统计截至 2019-07-27&#xff08;包含2019-07-27&#xff09;&#xff0c;近 30 天的每日活跃用户数&#xff08;当天只要有一条活动记录&#xff0c;即为活跃用户&#xff09; 要计算…

AbutionGraph时序(流式)图数据库开发文档地址

AbutionGraph-时序(流式)图数据库&#xff0c;官方开发文档(API)地址&#xff1a; http://www.thutmose.cn

Java链接elasticsearch8.14.1

项目需求&#xff0c;需要实现海量数据的聚合、查询。因为职业生涯开发使用springboot微服务架构、Java开发的方式&#xff0c;所以&#xff0c;项目前期准备了elasticsearch、kibana、logstash的集群环境&#xff0c;作为服务端&#xff0c;用于数据的收集、存储&#xff1b;但…

『 Linux 』信号的写入与保存

文章目录 信号的发送信号的保存sigset_t 类型与信号集操作函数阻塞信号集(信号屏蔽字)操作函数未决信号集操作函数验证阻塞信号集与未决信号集 信号的发送 $ kill -l1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10)…

护眼台灯哪个牌子最好?五款平价护眼台灯推荐

如今在快节奏的生活里&#xff0c;不管是上班族还是作为一名学生党&#xff0c;都离不开长时间用眼的情况。高强度的用眼自然会对眼睛伤害大。近视加重可能都还算是小问题&#xff0c;严重的话会出现严重的眼部健康问题&#xff0c;所以&#xff0c;拥有一款合适的护眼台灯是很…

【C++】——红黑树(手撕红黑树,彻底弄懂红黑树)

目录 前言 一 红黑树简介 二 为什么需要红黑树 三 红黑树的特性 四 红黑树的操作 4.1 变色操作 4.2 旋转操作 4.3 插入操作 4.4 红黑树插入代码实现 4.5 红黑树的删除 五 红黑树迭代器实现 总结 前言 我们之前都学过ALV树&#xff0c;AVL树的本质就是一颗平…

【YOLOv5/v7改进系列】引入中心化特征金字塔的EVC模块

一、导言 现有的特征金字塔方法过于关注层间特征交互而忽视了层内特征的调控。尽管有些方法尝试通过注意力机制或视觉变换器来学习紧凑的层内特征表示&#xff0c;但这些方法往往忽略了对密集预测任务非常重要的被忽视的角落区域。 为了解决这个问题&#xff0c;作者提出了CF…

力扣高频SQL 50题(基础版)第十七题

文章目录 力扣高频SQL 50题&#xff08;基础版&#xff09;第十七题1075. 项目员工 I题目说明思路分析实现过程准备数据实现方式结果截图 力扣高频SQL 50题&#xff08;基础版&#xff09;第十七题 1075. 项目员工 I 题目说明 项目表 Project&#xff1a; ----------------…

uniapp引入自定义图标

目录 一、选择图标&#xff0c;加入购物车 二、下载到本地 三、导入项目 四、修改字体引用路径 五、开始使用 这里以扩展iconfont图标为例 官网&#xff1a;iconfont-阿里巴巴矢量图标库 一、选择图标&#xff0c;加入购物车 二、下载到本地 直接点击下载素材&#xff0…

为什么很多人在一定年龄后的肥胖无法避免

人体在营养均衡状态的时候&#xff0c;是不容易长胖的&#xff0c;且身体也远比一般人更健康些&#xff0c;但想要一直维持身体的这种健康均衡的状态&#xff0c;不仅生活上要很有规律&#xff0c;饮食上也要营养均衡才行。但以如今社会的快节奏生活而言&#xff0c;基本没有人…

Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|(三)双向LSTM+CRF模型构建实现

Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|&#xff08;一&#xff09;序列标注与条件随机场的关系 Mindspore框架CRF条件随机场概率图模型实现文本序列命名实体标注|&#xff08;二&#xff09;CRF模型构建 Mindspore框架CRF条件随机场概率图模型实现文本…

现代Java开发:使用jjwt实现JWT认证

前言 jjwt 库 是一个流行的 Java 库&#xff0c;用于创建和解析 JWT。我在学习spring security 的过程中看到了很多关于jwt的教程&#xff0c;其中最流行的就是使用jjwt实现jwt认证&#xff0c;但是教程之中依然使用的旧版的jjwt库&#xff0c;许多的类与方法已经标记弃用或者…

【Python机器学习】决策树的简单实践——预测隐形眼镜类型

使用小型数据集&#xff0c;我们就可以利用决策树学到很多知识&#xff1a;眼科医生是如何判断患者需要佩戴的镜片类型的&#xff1b;一旦理解了决策树的工作原理&#xff0c;我们甚至也可以帮助人们判断需要佩戴的镜片类型。 隐形眼镜数据集是非常著名的数据集&#xff0c;它包…

CSS常见属性详解——内边距与外边距

内边距与外边距 内边距 外边距 应用场景 在网页排版布局时&#xff0c;我们经常会希望元素与元素之间有一定的间距&#xff0c;此时我们可能会用到CSS的外边距或内边距属性&#xff0c;这两个属性都能让元素之间产生距离&#xff0c;那么他们之间有什么不同呢&#xff1f; …

富芮坤FR800X系列之按键检测模块设计

FR800X系列按键检测模块 读者对象&#xff1a; 本文档主要适用以下工程师&#xff1a; 嵌入式系统工程师 单片机软件工程师 IOT固件工程师 BLE固件工程师 文章目录 1.概要2.用户如何设计按键检测模块2.1 GPIO初始化2.2按键模块初始化2.3设计中断函数&#xff1a;2.4循环…

深入探索PHP框架:Symfony框架全面解析

1. 引言 在现代Web开发领域&#xff0c;PHP作为一种广泛使用的服务器端脚本语言&#xff0c;其框架的选择对于项目的成功至关重要。PHP框架不仅能够提高开发效率&#xff0c;还能确保代码的质量和可维护性。本文将深入探讨Symfony框架&#xff0c;这是一个功能强大且灵活的PHP…

Python学习笔记45:游戏篇之外星人入侵(六)

前言 飞船模块的功能基本已经完成。今天继续完成子弹模块的功能。 子弹模块 子弹和飞船模块&#xff0c;在游戏逻辑中有一种生成与被生成的表面关系&#xff0c;因为子弹在游戏中是由飞船发射的。但是在我们实际抽象的过程中&#xff0c;飞船与子弹并不是is的关系&#xff0…

UML通信图建模技术及应用例

新书速览|《UML 2.5基础、建模与设计实践》 在对系统的动态行为进行建模时&#xff0c;通信图常被用于按组织结构对控制流进行建模。与顺序图一样&#xff0c;一个单独的通信图只能显示一个控制流。 使用通信图建模时可以遵循如下策略&#xff1a; &#xff08;1&#xff09…

普通人这一生逆袭的唯一机会

普通人这一生逆袭的唯一机会 在人生的长河中&#xff0c;每个普通人心中都藏着一个逆袭的梦想。梦想着从平凡走向卓越&#xff0c;从底层攀至顶峰。但梦想与现实之间&#xff0c;究竟有多远的距离&#xff1f;今天&#xff0c;让我们一起探索那些看似遥不可及&#xff0c;却又…