当前位置: 首页 > ai >正文

力扣 刷题(第七十一天)

灵感来源 

- 保持更新,努力学习

- python脚本学习

4的幂

解题思路

  1. 位运算条件:4 的幂的二进制表示中只有一个 1,且位于奇数位(如 4¹ = 1004² = 10000)。
  2. 模运算条件:4 的幂减 1 后能被 3 整除(数学性质:4^k - 1 = (2^k - 1)(2^k + 1),其中一个因子必为 3 的倍数)。
    class Solution:def isPowerOfFour(self, n: int) -> bool:# 条件1:n > 0# 条件2:n是2的幂(通过n & (n-1) == 0判断)# 条件3:n减1后能被3整除(4^k - 1是3的倍数)return n > 0 and (n & (n - 1)) == 0 and (n - 1) % 3 == 0

逐行解释

class Solution:def isPowerOfFour(self, n: int) -> bool:# 条件1:n必须为正整数# 4的幂定义为4^k(k为非负整数),因此n必须大于0# 例如:4^0=1, 4^1=4, 4^2=16...condition1 = n > 0# 条件2:n必须是2的幂# 2的幂的二进制表示中只有一个1,例如:2=10, 4=100, 8=1000...# 通过n & (n-1) == 0判断,例如:# - n=4(100) & 3(011) = 000 → 满足条件# - n=6(110) & 5(101) = 100 → 不满足条件condition2 = (n & (n - 1)) == 0# 条件3:n减1后能被3整除# 数学性质:4^k - 1 = (2^k - 1)(2^k + 1),其中一个因子必为3的倍数# 例如:# - 4^1 - 1 = 3 → 3是3的倍数# - 4^2 - 1 = 15 → 15是3的倍数condition3 = (n - 1) % 3 == 0# 同时满足三个条件时,n才是4的幂return condition1 and condition2 and condition3

http://www.xdnf.cn/news/14674.html

相关文章:

  • 第七章——一元函数微分学的物理应用
  • 多表连接查询:语法、注意事项与最佳实践
  • 如何快速学习一门新编程语言
  • 【Linux】理解进程状态与优先级:操作系统中的调度原理
  • STM32HAL 旋转编码器教程
  • 自定义上下两个方向的柱形图
  • Vue.js 中的数字格式化组件:`FormattedNumber`
  • Note2.4 机器学习:Batch Normalization Introduction
  • 栅极驱动器选的好SiC MOSFET高效又安全
  • Microsoft AZ-900AI-900考证速过经验分享
  • docker部署后端服务的脚本
  • 大模型在急性冠脉综合征预测及诊疗方案制定中的应用研究
  • 大数据在UI前端的应用创新研究:用户偏好的动态调整与优化
  • JavaScript中Object()的解析与应用
  • 免费AI助手工具深度测评:Claude4本地化部署与实战应用指南
  • Spring Boot 项目实训 - 图书信息网站
  • Windows11系统上安装WM虚拟机及Ubuntu 22.04系统
  • ESP32 008 MicroPython Web框架库 Microdot 实现的网络文件服务器
  • 开源 java android app 开发(十三)绘图定义控件、摇杆控件的制作
  • 【策划所需编程知识】
  • Tomcat Maven 插件
  • 人工智能-基础篇-3-什么是深度学习?(DL,卷积神经网络CNN,循环神经网络RNN,Transformer等)
  • flink同步kafka到paimon,doris加速查询
  • 目标跟踪存在问题以及解决方案
  • 电脑远程控制另一台电脑无法连接怎么办
  • Java+Python智能化网盘【Day8-2】
  • MySQL基础维护实操手册:从启停到备份恢复
  • 【RAG面试题】如何获取准确的语义表示
  • 华为云Flexus+DeepSeek征文|基于Dify+ModelArts开发AI智能会议助手
  • 氨基酸的结构和作用