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

9. 回文数

9. 回文数

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。

回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,121 是回文,而 123 不是。

 

示例 1:

输入:x = 121
输出:true

示例 2:

输入:x = -121
输出:false
解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。

示例 3:

输入:x = 10
输出:false
解释:从右向左读, 为 01 。因此它不是一个回文数。

 

提示:

  • -231 <= x <= 231 - 1

 

进阶:你能不将整数转为字符串来解决这个问题吗?


def is_k_palindrome(x: int, k: int) -> bool:# 在以 k 为基数的表示中,如果 x 能被 k 整除,那么其 k 进制表示的最后一位是 0。而回文数字通常不允许以 0 开头(除非是 0 本身),因此这是一个快速排除的条件。if x % k == 0:return False# 用来构建 x 在 k 进制下的反向数字rev = 0# x // k 是 x 除以 k 的整数部分,相当于去掉 x 在 k 进制下的最后一位# 当 rev 构建的反向数字还没有达到或超过 x 去掉最后一位的数字时,继续循环。while rev < x // k:# x % k 是 x 在 k 进制下的最后一位数字。# rev * k 将 rev 左移一位(在 k 进制下),然后加上 x 的最后一位。# 这相当于将 x 的数字从低位到高位依次取出,构建其反向的数字。rev = rev * k + x % k# 相当于将 x 右移一位(在 k 进制下)x //= k# 这样,每次循环中:# 取出 x 的最后一位(x % k),加到 rev 的后面。# 去掉 x 的最后一位(x = x // k)。return rev == x or rev == x // k
# 如果 x 在 k 进制下是回文,那么在构建 rev 的过程中,rev 会逐步等于 x 的前半部分。对于偶数长度的回文,rev 会等于 x 的前半部分;对于奇数长度的回文,rev 会等于 x 去掉中间数字后的前半部分。# 例如:# 偶数长度:x 的 k 进制表示为 abba,rev 构建为 ab,x 逐步变为 ab,最后 rev == x。
# 奇数长度:x 的 k 进制表示为 abcba,rev 构建为 ab,x 逐步变为 a,最后 rev == x * k + b(可能需要 rev == x // k 来匹配)。

 

 

http://www.lqws.cn/news/532477.html

相关文章:

  • MySQL (二):范式设计
  • Linux服务器部署Leantime与cpolar构建低成本团队协作环境
  • LRU缓存C++
  • kubernetes》》k8s》》滚动发布 、金丝雀发布 、
  • 医疗AI专科子模型联邦集成编程分析
  • 第一章-人工智能概述-机器学习基础与应用(1/36)
  • 时序分析未完待续
  • DeepSeek16-open-webui Pipelines开发填坑
  • 什么是财务共享中心?一文讲清财务共享建设方案
  • dlib检测视频中的人脸并裁剪为图片保存
  • centos 7 安装NVIDIA Container Toolkit
  • 鸿蒙原子化服务与元服务:轻量化服务的未来之路
  • Spring Security 安全控制终极指南
  • postman接口功能测试
  • 【音视频】Ubuntu下配置ffmpeg库
  • Learning a Neural Solver for Multiple Object Tracking
  • 表单数据收集实现分析
  • vue3+element-plus 组件功能实现 上传功能
  • python的文学名著分享系统
  • Unity热更新 之 Lua
  • docker 命令
  • Unity AR构建维护系统的以AI驱动增强现实知识检索系统
  • 专题:2025中国游戏科技发展研究报告|附130+份报告PDF、原数据表汇总下载
  • [mcp-servers] docs | AI客户端-MCP服务器-AI 架构
  • 国外开源客服系统chathoot部署,使用教程
  • Windows 下让任何 .bat 脚本后台运行的方法:使用 NSSM 注册为服务,告别误关窗口
  • 常见的排序方法
  • VUE-----常用指令
  • 如何使用 vue vxe-table 来实现一个产品对比表表格
  • ​​深入解析 Vue 中的 pathRewrite:路径重写规则详解​​