Kimi LeetCode 3533. 判断连接可整除性 Java实现
📅 2026/7/12 23:52:49
👁️ 次浏览
以下是 LeetCode 3533 判断连接可整除性 的 Java 实现。思路概述- n ≤ 13使用状压 DPBitmask DP。- 先对 nums 排序这样 DP 过程中按顺序枚举下一个数字时找到的第一个合法解就是字典序最小的。- dp[mask][mod]使用了 mask 中的数字当前余数为 mod是否能形成合法连接。- 转移枚举下一个数字 i新的余数 (mod * 10^len(nums[i]) nums[i]) % k。- 预处理pows[i] 10^len(nums[i]) % k。复杂度- 时间O(n! · n) 最坏情况但状压 DP 优化为 O(2^n · n · k)约为 13 · 8192 · 100 ≈ 10^6。- 空间O(2^n · k)完整代码javaclass Solution {public int[] concatenatedDivisibility(int[] nums, int k) {final int n nums.length;// 先排序保证字典序最小Arrays.sort(nums);// 每个数字的位数int[] lengths new int[n];// 10^lengths[i] % kint[] pows new int[n];for (int i 0; i n; i) {lengths[i] String.valueOf(nums[i]).length();pows[i] (int) Math.pow(10, lengths[i]) % k;// 更安全的写法手动计算模幂避免浮点精度问题int p 1;for (int j 0; j lengths[i]; j) {p (p * 10) % k;}pows[i] p;}// mem[mask][mod] null 未计算, 0 不可行, 1 可行Integer[][] mem new Integer[1 n][k];// 先判断是否存在解if (!dp(nums, pows, mem, k, 0, 0)) {return new int[0];}// 重构答案return reconstruct(nums, pows, mem, k, 0, 0);}// 判断是否存在合法方案private boolean dp(int[] nums, int[] pows, Integer[][] mem, int k, int mask, int mod) {if (mem[mask][mod] ! null) {return mem[mask][mod] 1;}// 所有数字都用完了检查余数是否为0if (mask (1 nums.length) - 1) {mem[mask][mod] (mod 0 ? 1 : 0);return mem[mask][mod] 1;}for (int i 0; i nums.length; i) {// i 还没被使用if ((mask i 1) 0) {// 新的余数 (当前余数 * 10^len nums[i]) % kint newMod (mod * pows[i] nums[i]) % k;if (dp(nums, pows, mem, k, mask | (1 i), newMod)) {mem[mask][mod] 1;return true;}}}mem[mask][mod] 0;return false;}// 重构字典序最小的合法排列private int[] reconstruct(int[] nums, int[] pows, Integer[][] mem, int k, int mask, int mod) {for (int i 0; i nums.length; i) {if ((mask i 1) 0) {int newMod (mod * pows[i] nums[i]) % k;if (dp(nums, pows, mem, k, mask | (1 i), newMod)) {int[] first new int[] {nums[i]};int[] rest reconstruct(nums, pows, mem, k, mask | (1 i), newMod);int[] res new int[first.length rest.length];System.arraycopy(first, 0, res, 0, first.length);System.arraycopy(rest, 0, res, first.length, rest.length);return res;}}}return new int[0];}}关键点说明1. 先排序Arrays.sort(nums) 是关键。因为 dp 和 reconstruct 都按排序后的顺序枚举 i所以找到的第一个可行解就是字典序最小的。2. 模幂预处理pows[i] 10^len(nums[i]) % k用于拼接时的余数转移。注意用循环计算避免 Math.pow 的浮点精度问题。3. 记忆化数组Integer[][] 用 null 表示未计算0/1 表示不可行/可行。也可以用 int[][] 配合 -1/0/1。4. 余数转移公式newMod (mod * pows[i] nums[i]) % k等价于把 nums[i] 拼到当前数右边。
Tutorial_NoLua — 纯 C# 命令模式
与 HelloWorld 最大的不同:不用写 Lua
NoLua 完全不写 Lua 脚本,命令和数据操作全在 C# 中完成。
context new Context(); // 无参数,空的 Lua table
context.AddCSharpModule(&qu…
📅 2026/7/12 23:52:49
如果你最近在现有代码库上启动过 Claude Code、Cursor 或 Codex,很可能在项目根目录中遇到过一个名为 AGENTS.md 的文件,并好奇是谁把它放在那里的。它不是 README。它不是给团队看的文档。它是一组专门为即将开始编辑你代码的 AI 代理编写的指令。 我一度忽略了这些文件,以…
📅 2026/7/12 23:52:49
说实话,看到“openclaw云服务推荐”这几个字的时候,我第一反应是翻白眼。这年头,随便换个马甲都敢叫“云巨头”,随便加个后缀就敢吹“极致性能”。我试过不下二十家云厂商,有的贵得让人想骂娘,有的卡得让人想砸键盘。但这次,openclaw确实让我有点意外,甚至想给它的产品…
📅 2026/7/12 23:51:29
# 零基础也能玩转AI:文案、办公、绘画全场景实战速成指南## 引言2026年,AI不再是极客的专利,而是职场人、创作者、甚至家庭主妇的日常工具。你是否曾面对空白的文档无从下手?为繁琐的报表熬夜加班?或羡慕那些用AI生成精…
📅 2026/7/13 0:54:08
一、引言
2026年7月11日,智谱创始人唐杰发布题为《巨浪已来》的全员内部信,宣布启动名为"TouchHigh(摸高)"的两年战略投入计划——不追求短期的应用变现,全力冲击下一代通用人工智能(AGI)。
这封信发出的时间点耐人寻味。
就在同一周,港股大模型"双雄…
📅 2026/7/13 0:51:08
更多请点击:
https://codechina.net
第一章:Gen-4 多模态协同工作流的架构演进与核心范式 Gen-4 多模态协同工作流标志着从单模态串行处理向跨模态实时语义对齐的重大跃迁。其底层架构摒弃了传统“编码–融合–解码”的三段式范式,转而采用动…
📅 2026/7/13 0:50:07
本文将以"文件描述符"为线索,从六个核心问题出发,带你从应用层一路"考古"到操作系统内核,彻底搞懂 Linux IO 系统的底层原理。关于作者大家好,我是 CodeStats。一个在底层技术上"考古"了四年的硬核…
📅 2026/7/13 0:50:07
## ③ 高清画质与细节还原能力验证画质的清晰度是衡量生成工具硬实力的关键指标。在高分辨率输出测试中,主流工具已能原生支持 4K 级别的图像生成,或者通过智能放大算法,将低分辨率草图无损提升至印刷级精度。关键在于,这种放大并…
📅 2026/7/13 0:50:07
目录
一、痛点:AI 工具碎片化到底有多折磨人二、聚合平台三、核心功能矩阵:一个平台,全场景覆盖 3.1 AI 视频生成3.2 AI 图片生成3.3 AI 智能对话3.4 AI 音乐与语音3.5 AI 智能体与工作流3.6 垂直场景:漫画、短剧、电商 四、统一…
📅 2026/7/13 0:50:07
做技术的人都知道,环境配置是最让人头秃的环节。特别是当你面对一个相对小众或者刚起步的项目时,文档可能不全,社区可能冷清。这时候,找到靠谱的来源就显得尤为重要。今天咱们不聊虚的,就聊聊怎么稳妥地完成 openclaw安装官方 流程,顺便分享几个我踩过的坑,希望能帮你省…
📅 2026/7/13 0:01:22
1. 项目概述:当火焰特效成为帧率杀手在UE5项目里,尤其是那些追求电影级视觉的开放世界或者大场景战斗游戏,一个熊熊燃烧的篝火、一次震撼的爆炸,往往是点燃玩家情绪的关键。Niagara作为虚幻引擎5中取代了老旧的Cascade的下一代粒子…
📅 2026/7/13 0:01:52
1. 项目概述与核心价值 最近在对接抖音小游戏平台时,侧边栏复访功能成了一个绕不开的“必答题”。很多开发者朋友,包括我自己一开始,都对这个功能有点摸不着头脑:它到底是什么?为什么平台这么重视?不接入行…
📅 2026/7/13 0:01:52
豆包openclaw最近圈子里都在聊豆包openclaw,我也没忍住,掏腰包入手了一套。说实话,刚拿到手的时候,心里是打鼓的。毕竟市面上类似的智能硬件太多了,有的吹得天花乱坠,用起来却是一堆bug。为了不让大家的钱打水漂,我连续用了半个月。从开箱到日常高频使用,甚至故意测试它…
📅 2026/7/12 0:00:04
SQLyog 13.3.1 社区版在Windows 10/11上的完整安装与连接指南 对于刚接触MySQL数据库管理的开发者和学生来说,选择一个直观易用的图形化管理工具至关重要。SQLyog作为一款轻量级但功能强大的MySQL GUI工具,能够显著提升数据库操作的效率和体验。本文将详…
📅 2026/7/12 0:00:28
SPEC CPU 2006 跨平台基准测试深度实战:ARM/X86/MIPS 架构配置优化与结果分析方法论在当今多元化的计算架构时代,如何客观评估不同处理器平台的真实性能成为系统工程师和性能优化专家的核心挑战。SPEC CPU 2006 作为业界公认的计算密集型基准测试套件&am…
📅 2026/7/12 0:00:28
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/12 0:15:59
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/12 15:39:57
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/12 8:07:36