算法题题解记录——10. 小F的永久代币卡回本计划

83 阅读1分钟

题目

www.marscode.cn/practice/r3… image.png

代码

这道题过于简单,以下写出三种方法:

def solution(a: int, b: int) -> int:
    # PLEASE DO NOT MODIFY THE FUNCTION SIGNATURE
    # write code here

    # 方法一
    # from math import ceil
    # return ceil(a / b)

    # 方法二
    # rest = a % b
    # if rest > 0:
    #     return a // b + 1
    # else:
    #     return a / b

    # 方法三
    t = a // b * b
    if t < a:
        return a // b + 1
    else:
        return a // b


if __name__ == '__main__':
    print(solution(10, 1) == 10)
    print(solution(10, 2) == 5)
    print(solution(10, 3) == 4)

学到了

  • python中的模块导入是from xxx import xxx,而js中是import xxx from xxx

  • pythonimport可以写在局部作用域内,而js中只能写在顶层,js想要写在局部需要用 import()函数,它将会返回一个promise

  • 即使python支持局部作用域内导入模块,但还是建议顶层导入。(虽然python使用缓存对局部导入模块进行了优化,但是在当模块较大或者函数频繁调用时还是会有额外性能开销