大家好,我叫 A Fei,目前是学习 Ruby 和 JavaScript 约三个月的新手。
在学习过程中,我特别喜欢去解题目,面对不同种类的题型,苦思出一套解法,当按下 Submit 键後,喷出测试通过的绿字真的很爽!(但大多时候是喷红字居多...)
此系列文主要记录我连续 30 天解题的思路和解答,并且分析其他「道友」的最佳解法,来了解自己不足的地方。使用的题库网站是「Codewars」,并给自己每天一小时的时间,在时限至少要解完一题。废话不多说,让我们看看今天的题目:
Implement a function that adds two numbers together and returns their sum in binary. The conversion can be done before, or after the addition.
The binary number returned should be a string.
Examples:
add_binary(1, 1) == "10" (1 + 1 = 2 in decimal or 10 in binary)
add_binary(5, 9) == "1110" (5 + 9 = 14 in decimal or 1110 in binary)
题目难度:7 kyu
类型:Binary
是否有在时限内回答正确:是
第一天先从简单的题目暖身。这题要我们把方法所带入的两个引数相加,回传「二进位制」(binary)的结果。我们需要考虑到两个重点,一是把 a + b 的和从十进位(decimal)转换成二进位,二是方法回传的资料型别是「字串」。
刚好,神奇语法师 Ruby 提供的整数转字串的 to_s() 方法,只要在括号中填入 radix (2~36),你就可以轻松地得到转成其他进位制的「字串」。
这里贴上我的答案:
def add_binary(a,b)
(a + b).to_s(2)
end
因为题目不难,这里就不用分析其他「大大们」的解法了。铁人赛的首篇发文就到这,希望之後再忙都可以坚持完赛,加油!
NSubstitute 基本介绍与安装 NSubstitute(简称 NSub)是一套友善的 .NE...
补数为何存在? 为了将减法以加法的形式进行实作,减少电路开销(省去减法器)。 补数的讨论 一般来说,...
在提到MSSQL前,我们要先有对资料库的一些基本概念。 何谓资料库? 资料库就是储存资料的地方。但比...
前言 今天来看看, node 怎麽进行一个 http request 正文 打开 http.js 这...
当一个请求 (request) 进入系统之後,通常我们就会立即的处理它。但如果我们不想这麽直接的去处...