摘要: 该问题需要注意的是字符串需要满足题目的格式化要求。按照题意想,最容易想到的就是暴力枚举。一个灯,一层循环;两个灯,两层循环;三个灯..... 这样根据turned on的数目,代码是变动的。事实上,可以通过回溯算法来完成这种任意数量随机组合的枚举任务。 回溯算法 class Solution: de 阅读全文
posted @ 2026-02-17 11:19 冰雪聪明琪露诺 阅读(1) 评论(0) 推荐(0)
摘要: 十进制转二进制再转十进制 最简单,最朴素的想法是模拟。因为平常不太习惯用位运算,我没有想到使用简单的与或操作来提取二进制位。而是使用取余加扫地除的方法收集二进制位,然后逆转,再将二进制转换位十进制输出。可以说是非常之缓慢。时间复杂度为WlogW(快速幂复杂度为logW),空间复杂度为O(W),其中W 阅读全文
posted @ 2026-02-16 11:38 冰雪聪明琪露诺 阅读(6) 评论(0) 推荐(0)
摘要: 问题很简单,思路上直截了当的话很容易写除一堆if else条件的代码。既不美观,也没有泛用性。下面给出实用于多进制的求和计算模板,关键在于将当前位及进位值使用取余和扫地除计算,而不是通过if else逻辑硬编码。 class Solution: def addBinary(self, a: str, 阅读全文
posted @ 2026-02-15 21:29 冰雪聪明琪露诺 阅读(3) 评论(0) 推荐(0)