Leetcode 964.Least Operators to Express Number

Well, we can also solve in dp format.
Python3

    @functools.lru_cache(None)
    def leastOpsExpressTarget(self, x, y):
        k = int(math.log(y, x)) + 1
        def dfs(y, k):
            if k == 0 or y == 0:
                return y + y - 1
            need, left = divmod(y, x**k)
            return min(dfs(left, k - 1) + need * k, dfs(x**k - left, k - 1) + (need + 1) * k)
        return dfs(y, k)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,448评论 0 10
  • 久别的问候 能够打在生命的脈搏之上 亦能够敲出離別的聲響 深深的吸一口刺鼻的寒风 能让人的喉头 尝到一絲腥甜 曾經...
    灰色的床单阅读 175评论 0 0
  • 众人相互搀扶着,继续向前,突然不远处人山人海,彩旗飘飘,像是在举行什么喜庆的活动,走近后一瞧,有扭秧歌的,有舞龙舞...
    探微游尘阅读 5,400评论 2 14
  • 这周看的是应用性比较强的书,叫做思维导图。作者是东尼博赞,书本并没有看完只看到98页,运用思维导图的技巧,做了一个...
    宝马妈妈大v阅读 2,863评论 0 50
  • 要学会好好说话
    荣爱阅读 217评论 0 0