247 words
1 minute
力扣每日一题 20260222
写在题解之前
上次认真做题还是 2024 年沈阳区域赛,最近写力扣发现已经不会写 mid 了,准备开个新坑更 每日一题 和 hot100 也算对自己复建的一个督促,主播是比较推崇费曼学习法的,学完之后做一个输出会让自己理解更透彻记得也更扎实,同时也给自己的学生时期留下一点痕迹,希望能和大家一起进步。
868. 二进制间距
考虑到只看相邻的 ,可以把 的二进制从低位到高位遍历,记一下 的位置,遍历过的位直接扔了就行,等遍历到下一个 的时候减一下上一个 的位置就中。
代码:
class Solution {public: int binaryGap(int n) { int pos = -1, mx = 0, cnt = 0; while(n) { if (n & 1) { if (pos != -1) mx = max(cnt - pos, mx); pos = cnt; } cnt++; n >>= 1; } return mx; }}; 力扣每日一题 20260222
https://fuwari.vercel.app/posts/leetcode_daily/0222/