LeetCode第一刷--leetcode提交格式介绍与273. Integer to English Words

22 篇文章 0 订阅
9 篇文章 0 订阅

第一次玩Leetcode,对代码提交格式不了解,提交了一上午,略尴尬尴尬

leetcode确实有很多有意思的地方,不像以前做各个高校ACM练习,leetcode会给出错误信息(哪个数据的错了),也会提供测试用例自定义窗口,你可以自己设置测试样例

对于输出结果会有个比较窗口,出现你的程序和源程序结果比对,帮你快速定位错误原因

此外,leetcode只需要你写核心代码部分,读取输入函数,函数调用都不需要自己做,在程序提交时,leetcode会自动补全,同时,也就要求我们写的核心代码部分必须按照leetcode规定的格式来写。

Python(像我这种习惯了C语言的人,刚开始就直接自己写了个函数就扔上面去尴尬,结果就是找不到Slution类)

C++

JAVA

C语言

主要是照着它的格式写,框框里就是leetcode提交需要的接口,你只需要实现这个接口就行了。

 

 

273Integer to English Words

Convert a non-negative integer to its english words representation. Given input is guaranteed to be less than 231 - 1.

For example,

123 -> "One Hundred Twenty Three"
12345 -> "Twelve Thousand Three Hundred Forty Five"
1234567 -> "One Million Two Hundred Thirty Four Thousand Five Hundred Sixty Seven"

Python实现:

class Solution(object):
    def __init__(self):
        self.units = ['Zero', 'One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine', 'Ten', 'Eleven',
                      'Twelve', 'Thirteen', 'Fourteen', 'Fifteen', 'Sixteen', 'Seventeen', 'Eighteen', 'Nineteen', 'Twenty']
        self.tens = ['', 'Ten', 'Twenty', 'Thirty', 'Forty', 'Fifty', 'Sixty', 'Seventy', 'Eighty', 'Ninety']

    def numberToWords(self, num):
        if num > 999999999:
            if num % 1000000000 == 0:
                return self.numberToWords(num / 1000000000) + " Billion"
            else:
                return self.numberToWords(num / 1000000000) + " Billion " + self.numberToWords(num % 1000000000)
        elif num > 999999:
            if num % 1000000 == 0:
                return self.numberToWords(num / 1000000) + " Million"
            else:
                return self.numberToWords(num / 1000000) + " Million " + self.numberToWords(num % 1000000)
        elif num > 999:
            if num % 1000 == 0:
                return self.numberToWords(num / 1000) + " Thousand"
            else:
                return self.numberToWords(num / 1000) + " Thousand " + self.numberToWords(num % 1000)
        elif num > 99:
            if num % 100 == 0:
                return self.units[num / 100] + " Hundred"
            else:
                return self.units[num / 100] + " Hundred " + self.numberToWords(num % 100)
        elif num > 20:
            if num % 10 == 0:
                return self.tens[(num / 10)]
            else:
                return self.tens[(num / 10)] + " " + self.units[num % 10]
        else:
            return self.units[num]

 

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值