Kimi    LeetCode 3704. 统计和为 N 的无零数对 Java实现
以下是 LeetCode 3704「统计和为 N 的无零数对」的 Java 实现。思路数位 DP由于 n 最大可达 10^15枚举所有数对会超时需要用 数位 DP 来解决。核心思想是从 最低位到最高位 逐位处理 n 的十进制表示状态定义为- dp[carry][aliveA][aliveB]处理到当前位时低位进位为 carrya 和 b 是否还在更高位有有效数字aliveA/aliveB。转移时枚举当前位 da 和 db- 如果 aliveX 1当前位可以取 1~9无零或在非最低位时取 0表示该数到此结束。- 如果 aliveX 0当前位只能取 0前导零不属于十进制表示。需要满足 (da db carry) % 10 n 的当前位。最后给 n 补一位 0 来吸收最终进位答案为 dp[0][0][0]。时间复杂度 O(L × 9²)空间复杂度 O(1)其中 L 为 n 的位数。javaclass Solution {public long countNoZeroPairs(long n) {char[] cs Long.toString(n).toCharArray();int m cs.length;// digits[i] 表示 n 的第 i 位从低位到高位0-basedint[] digits new int[m 1];for (int i 0; i m; i) {digits[i] cs[m - 1 - i] - 0;}digits[m] 0; // 额外补一位最高位 0吸收最终进位// dp[carry][aliveA][aliveB]long[][][] dp new long[2][2][2];dp[0][1][1] 1; // 初始状态无进位a 和 b 都还在存活for (int pos 0; pos m 1; pos) {long[][][] ndp new long[2][2][2];int target digits[pos];for (int carry 0; carry 1; carry) {for (int aliveA 0; aliveA 1; aliveA) {for (int aliveB 0; aliveB 1; aliveB) {long ways dp[carry][aliveA][aliveB];if (ways 0) {continue;}// 构造 a 当前位可选的数字及对应的 aliveA 下一状态int[] aDigits;int[] aNext;if (aliveA 1) {if (pos 0) {// 最低位必须是非零数字1~9因为 a 是正整数aDigits new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9};aNext new int[] {1, 1, 1, 1, 1, 1, 1, 1, 1};} else {// 非最低位可以选 1~9继续存活或选 0在此结束aDigits new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};aNext new int[] {1, 1, 1, 1, 1, 1, 1, 1, 1, 0};}} else {// a 已经结束当前位只能是 0aDigits new int[] {0};aNext new int[] {0};}// 构造 b 当前位可选的数字及对应的 aliveB 下一状态int[] bDigits;int[] bNext;if (aliveB 1) {if (pos 0) {bDigits new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9};bNext new int[] {1, 1, 1, 1, 1, 1, 1, 1, 1};} else {bDigits new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};bNext new int[] {1, 1, 1, 1, 1, 1, 1, 1, 1, 0};}} else {bDigits new int[] {0};bNext new int[] {0};}for (int ai 0; ai aDigits.length; ai) {int da aDigits[ai];int na aNext[ai];for (int bi 0; bi bDigits.length; bi) {int db bDigits[bi];int nb bNext[bi];int s da db carry;if (s % 10 ! target) {continue;}int ncarry s / 10;ndp[ncarry][na][nb] ways;}}}}}dp ndp;}// 最终要求无剩余进位a 和 b 都已经结束return dp[0][0][0];}}关键点说明1. 从低位到高位处理因为加法进位是从低位向高位传递的。2. alive 状态表示该数在更高位是否还有有效数字。alive 0 意味着该数已经结束更高位只能填 0前导零不计入十进制表示。3. 最低位特殊处理pos 0 时a 和 b 的最低位不能取 0因为它们是正整数最低位必须是 1~9。4. 额外补位digits[m] 0 用于处理最高位可能产生的进位确保所有状态正确收敛。

相关新闻

ChatGPT定时任务功能详解:从配置到实战的自动化指南

ChatGPT定时任务功能详解:从配置到实战的自动化指南

这次我们来看 ChatGPT 工作区新增的定时任务功能。这个功能让 ChatGPT 不再只是即时对话工具,而是能够按计划自动执行任务的智能助手。对于需要定期生成报告、自动检查数据、定时发送消息的用户来说,这直接解决了"重复劳动"的痛点。从核心能力…

2026/8/21 2:52:02 阅读更多 →
告别导出繁琐!AI 导出鸭一站式讲解怎样把 Claude 表格导出技巧

告别导出繁琐!AI 导出鸭一站式讲解怎样把 Claude 表格导出技巧

AI导出鸭实操教程:怎样把Claude表格导出高效落地全流程告别导出繁琐!AI导出鸭一站式讲解怎样把Claude表格导出技巧多终端工具测评|AI导出鸭手把手教你怎样把Claude表格导出无格式错乱 引言 日常使用Claude整理项目数据、统计台账、调研表格时…

2026/8/21 2:51:34 阅读更多 →
大语言模型多轮对话优化的关键技术方案

大语言模型多轮对话优化的关键技术方案

1. 项目背景与核心挑战在大语言模型(LLM)的实际应用中,多轮对话质量直接决定了用户体验。我在多个对话系统项目中反复验证过一个现象:单轮回答出色的模型,在连续对话中常出现上下文断裂、指代混乱和记忆丢失三大典型问…

2026/8/20 14:37:36 阅读更多 →

最新新闻

AI提示词工程(高阶)第22课:构建提示词框架

AI提示词工程(高阶)第22课:构建提示词框架

📚前言 系统学习提示词,内容大纲如下: 【预告】AI提示词工程从入门到精通教程大纲-CSDN博客 前导课程: AI提示词工程:初阶6课合集-CSDN博客 --*-*-*-- 进阶--*-*-*-- AI提示词工程(进阶)第…

2026/8/21 9:04:49 阅读更多 →
DeepSeek Harness插件开发:dsh-tool-autoexpand自动展开工具调用结果

DeepSeek Harness插件开发:dsh-tool-autoexpand自动展开工具调用结果

如果你用过 DeepSeek Harness(简称 dsh),可能会遇到一个看似微小但极其影响效率的问题:当 AI 助手返回一个包含代码、JSON 或复杂文本的结果时,你需要手动点击那个小小的“展开”按钮,才能看到完整内容。在…

2026/8/21 9:04:49 阅读更多 →
ORB-SLAM3 Optimizer::PoseOptimization

ORB-SLAM3 Optimizer::PoseOptimization

以下对 ORB-SLAM3 中 Optimizer::PoseOptimization 函数的逐行注释,并补充数学模型与公式说明。 函数功能 该函数以当前帧的初始位姿为起点,通过仅优化相机位姿(地图点固定)来最小化所有匹配点的重投影误差,并迭代剔除离群点,最终得到更精确的帧位姿。 int Optimizer:…

2026/8/21 9:04:49 阅读更多 →
DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent

DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent

DeepSeek Harness 开源 45 小时 14 万 Star:一句 npx 跑起你的第一个 Agent2026 年 8 月 13 日,DeepSeek 在发布 V4-Pro 正式版的同时,一并开源了自己的第一款 Agent 运行框架 —— DeepSeek Harness(dsh)。上线 45 小…

2026/8/21 9:04:49 阅读更多 →
【JMeter 学习打卡 Day 4】多用户登录 + 动态 token 关联

【JMeter 学习打卡 Day 4】多用户登录 + 动态 token 关联

一、学习总览天数主题核心产出Day 1JMeter 入门与基础概念弄清 JMeter 是什么、能干什么、不能干什么Day 2第一个测试计划 HTTP 请求能独立搭出一个最小可运行的 HTTP 测试计划Day 3断言:让测试结果有意义理解为什么没有断言,错误率永远是 0Day 4参数化…

2026/8/21 9:04:49 阅读更多 →
MA-VLCM:多模态融合如何革新多智能体策略价值评估

MA-VLCM:多模态融合如何革新多智能体策略价值评估

1. 从单智能体到多智能体:价值评估的范式转变在强化学习领域,评估一个策略的好坏,或者说预测一个状态或状态-动作对的长期回报,是核心任务之一。传统的价值函数,无论是状态价值函数V(s)还是动作价值函数Q(s, a)&#x…

2026/8/21 9:03:49 阅读更多 →

日新闻

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

前言随着国家数字基础设施信创替代、关键技术自主可控战略持续深化,口岸智慧安防、边检智能管控领域正全面进入国产化、自主化、安全可控升级周期。当前国内机场边检旅客识别与定位体系长期依赖国外商用视觉算法、进口成像硬件、闭源通用计算平台,存在核…

2026/8/21 0:00:42 阅读更多 →
别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱当下数字化建设浪潮中,很多项目将三维可视化、视频贴图叠加的数字孪生等同于空间智能。传统数字孪生更多停留在三维场景复刻,擅长把物理世界“画出来、展示出来”,…

2026/8/21 0:00:42 阅读更多 →
105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40C到85C的影像质量一致性——ISP参数温漂补偿与产线标定策略 去年冬天在北方某车厂做A样评审,凌晨四点的黑河试验场,零下三十三度。客户拿了一台冷启动的车,中控屏上倒车影像全是雪花噪点,暗部细节直接糊成一片。我第一反应是sensor温度没上来,暗电流…

2026/8/21 0:00:42 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 0:02:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/20 6:11:08 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/21 0:14:22 阅读更多 →