codewars练习js2021/5/67891026
文章目录
- codewars-js练习
- 2021/5/6
- github 地址
- 【1】<7kyu>【Greatest common divisor】
- 2021/5/7
- 【1】<7kyu>【Sum of Triangular Numbers】
- 2021/5/8
- 【1】<7kyu>【Invisible cubes】
- 【2】<6kyu>【Arabian String】
- 2021/5/9
- 【1】<8kyu>【What's the real floor?】
- 2021/5/10
- 【1】<8kyu>【Multiplication table for number】
- 2021/5/26
- 【1】<8kyu>【Gravity Flip】
codewars-js练习
2021/5/6
github 地址
my github地址,上面有做的习题记录,不断更新…
【1】<7kyu>【Greatest common divisor】
求两个正整数的最大公约数。整数可以很大,所以你需要找到一个聪明的解决方案。
example:
mygcd(30,12),6)
(mygcd(8,9),1)
(mygcd(1,1),1)
思路
一开始采用了简单粗暴的方式(代码如下),然后时间超时。
function mygcd(x,y){var i = Math.min(x,y);var temp = [];if(x==1&y==1)return 1;while(i>=1){if(x % i ==0 & y % i ==0)return i;i--;}}
后来采用了下面这种辗转相除的方法,就通过了。
solution
<script type="text/javascript">// 辗转相除法function mygcd(a, b) {if (b === 0) {return a;}return mygcd(b, a % b);};// 验证console.log(mygcd(30,12));//6console.log(mygcd(8,9));//1console.log(mygcd(1,1));//1
</script>
原理:
如果有两个数a和b,b如果为0,那么a和b的最大公约数一定是a。那么就想尽办法让它出现0的情况。
2021/5/7
【1】<7kyu>【Sum of Triangular Numbers】
你的任务是返回包括第n个三角形数在内的所有三角形数的和。
example:
[01]
02 [03]
04 05 [06]
07 08 09 [10]
11 12 13 14 [15]
16 17 18 19 20 [21]
If 4 is given: 1 + 3 + 6 + 10 = 20.
solution
<script type="text/javascript">function sumTriangularNumbers(n) {if(n<0)return 0;let sum =0;for(let i=1;i<n+1;i++){sum += (i*i + i)/2;}return sum;}// 验证console.log(sumTriangularNumbers(6));// 56console.log(sumTriangularNumbers(34));//7140console.log(sumTriangularNumbers(-291));// 0console.log(sumTriangularNumbers(943));//140205240console.log(sumTriangularNumbers(-971));// 0
</script>
2021/5/8
【1】<7kyu>【Invisible cubes】
example:
0// 0
1//0
2//0
3//1
5//27
solution
<script type="text/javascript">function notVisibleCubes(n) {// console.log(n)return Math.max(0, (n-2)**3);}
</script>
【2】<6kyu>【Arabian String】
你必须创建一个可以将字符串从任何格式转换为PascalCase的方法。这也必须支持符号。
example:
"example name" --> "ExampleName"
"your-NaMe-here" --> "YourNameHere"
"testing ABC" --> "TestingAbc"
solution
<script type="text/javascript">function camelize(str){if(str.match(/[a-z0-9]+/gi) == null) return ''return str.match(/[a-z0-9]+/gi).map(function(s) {return s[0].toUpperCase() + s.substr(1).toLowerCase()}).join('')}// 验证console.log(camelize("java script"));//"JavaScript" console.log(camelize("cODE warS"));//"CodeWars" console.log(camelize("your-NaMe-here"));//"YourNameHere"
</script>
2021/5/9
【1】<8kyu>【What’s the real floor?】
写一个函数,在美国系统中给定的楼层返回在欧洲系统中的楼层。
随着第一层被一层取代,第13层被移除,数字就会下降来代替它们。在13以上的情况下,它们向下移动两个,因为在它们下面有两个遗漏的数字。
example:
1 => 0
0 => 0
5 => 4
15 => 13
-3 => -3
solution
function getRealFloor(n) {
// console.log(n)if(n<=0)return nelse if(n>0 && n<13)return n-1;else if(n>13)return n-2;
}
2021/5/10
【1】<8kyu>【Multiplication table for number】
你的目标是返回一个从1到10的整数的乘法表。
example:
1 * 5 = 5
2 * 5 = 10
3 * 5 = 15
4 * 5 = 20
5 * 5 = 25
6 * 5 = 30
7 * 5 = 35
8 * 5 = 40
9 * 5 = 45
10 * 5 = 50
solution
function multiTable(number) {var result = [];for(var i=1;i<=10;i++){var mul = i * numbervar str = i + ' * ' + number + ' = ' + mulresult.push(str)}return (result.join('\n'))}
2021/5/26
【1】<8kyu>【Gravity Flip】
example:
flip('R', [3, 2, 1, 2]) => [1, 2, 2, 3]
flip('L', [1, 4, 5, 3, 5]) => [5, 5, 4, 3, 1]
solution
const flip=(d, a)=>{// 如果是R,则递增排序; 如果是L,则递减排序if(d == 'L')return a.sort((a,b)=>{return b-a})else return a.sort((a,b)=>{return a-b})
}
codewars练习js2021/5/67891026相关推荐
- Codewars Vasya - Clerk--6 kyu--Python解法
Codewars Vasya - Clerk–6 kyu–Python解法 Codewars 是一个跟LeetCode类似的结题网站. Codewars题解专栏:Codewars题解 题目地址:Tra ...
- Codewars 开篇
今年二月份,因为寒假在家休息了一段时间,打算干点正事打发无聊的时光.于是想刷点题找找编程的感觉,之前也刷过一些OJ题.Leetcode上的题,所以本来是计划刷一些leetcode的题,就当是为以后找工 ...
- codewars??? Is my friend cheating?
2019独角兽企业重金招聘Python工程师标准>>> https://www.codewars.com/kata/5547cc7dcad755e480000004/train/ja ...
- [codewars] - int32 to IPv4 二进制十进制 ip地址转换
原题 https://www.codewars.com/kata/int32-to-ipv4/train/java Take the following IPv4 address: 128.32.10 ...
- 入坑codewars
毕业一年多了,总感觉自己啥也不会.零零散散看了各种书,总感觉差点什么,代码毕竟还是敲出来的.OJ虽然也好,但是我这种画面党毕竟比较难接受,而且自查能力比较一般,各种不通过调试起来比较麻烦.也用过一阵子 ...
- codewars【1】
今天开始记录自己在codewars上遇到的问题和得到的收获. 首先是自己已完成的四道题. 1.CreditCardMask Usually when you buy something, you're ...
- daily CodeWars
每天都在codewars做题,刷题. 记录一下.. CodeWars Javascript filter - 1 function searchNames(logins){return logins. ...
- Codewars(3)
前一阵子在codewars上做了一道题,觉得很不错,期间也踩了很多很多坑,在此把我做题的整个过程和牵扯到的知识点做一个汇总,以及我在思考过程中犯的一些错误,希望看完之后能对你有帮助,不要犯我犯的错误, ...
- 菜圈的codewars(一),codewars的注册
看知乎有大神推荐codewars,现在正在学python,想上班的时候练习学习. 首先,要做两道题才能注册. 然而-- 菜圈表示第二题就不会做-- 我选的Python语言,第二题的答案是把第二个函数里 ...
- codewars(二)
今天是体验codewars的第二天,今天开始研究了一下大佬们的代码,emm,for循环是恶魔吧,我要换换换~!! 今天的题目: //您将获得一个包含整数的数组(其长度至少为3,但可能非常大).除了单个 ...
最新文章
- 关于Linux发行版本RedHat9中文输入法使用问题的说明
- htmltest~计算器界面的实现
- VTK:图表之MutableDirectedGraphToDirectedGraph
- TCP/IP学习笔记(六)Nagle算法
- windows下共享文件夹在Linux下打开
- netty实现客户端服务端心跳重连
- 5.6.50 mysql 用什么驱动_日均5亿查询量的京东订单中心,为什么舍弃MySQL用ES?
- 荷兰帝斯曼收购初创科技公司尚善 无氟光伏背板被指有利回收再利用
- 线程安全、同步与互斥机制以及死锁的产生与实现
- lib的编写与使用(C/C++)
- UNIX发展历史流程图
- 汇丰银行借沟通CTBS远程管理帐务
- 达梦数据库备份还原使用
- 802d简明调试手册_802d简明调试手册.pdf
- Python (and、or、、 |) 用法
- C/C++学习笔记——C基础:C语言概述
- 【经典推荐】10部关于数学的顶级纪录片
- PNAS:睡眠的fMRI频谱特征
- The Thirteenth Of Word-Day
- 数据安全--1--专栏开篇作-数据安全概念及架构
热门文章
- 奈奎斯特与香农定理_这样解释奈奎斯特定理和香农定理,初学者也能明白
- opencv-python 实现颜色检测
- Help library 安装arcobjects for .NET异常问题
- hexo建站之yilia主题diy
- ubuntu查询显卡型号
- python数据按照分组进行频率分布_3.2.1 分布分析
- html如何缩进对齐,CSS:文本样式(缩进/对齐/字符间隔/文本装饰/空白格处理)_html/css_WEB-ITnose...
- e4a 蓝牙温度app_单片机ESP8266无线传输DHT11温湿度(APP+E4A调试说明与程序设计)
- salesforce chatter 调查的相关内容
- Visual Studio Code中设置HTML/HTML5模板