DeepSeek    LeetCode 3725. 统计每一行选择互质整数的方案数 Java实现
这道题的核心思路是DP 容斥原理由于矩阵数值范围很小不超过150我们可以从d150向下计算“最大公约数恰好为d”的方案数。javaclass Solution {private static final int MOD 1_000_000_007;private static final int MAX_VAL 150;public int countCoprime(int[][] mat) {int m mat.length;// 1. 预处理每个数的所有因子ListInteger[] divisors new List[MAX_VAL 1];for (int i 1; i MAX_VAL; i) {divisors[i] new ArrayList();}for (int d 1; d MAX_VAL; d) {for (int multiple d; multiple MAX_VAL; multiple d) {divisors[multiple].add(d);}}// 2. 统计每行中能被 d 整除的数字个数int[][] rowDivisorCnt new int[m][MAX_VAL 1];for (int i 0; i m; i) {for (int x : mat[i]) {for (int d : divisors[x]) {rowDivisorCnt[i][d];}}}// 3. 容斥计算“gcd恰好为d”的方案数long[] exactGcd new long[MAX_VAL 1];for (int d MAX_VAL; d 1; d--) {long ways 1;for (int i 0; i m; i) {ways ways * rowDivisorCnt[i][d] % MOD;if (ways 0) break;}// 减去 gcd 是 d 的倍数的方案for (int multiple 2 * d; multiple MAX_VAL; multiple d) {ways (ways - exactGcd[multiple] MOD) % MOD;}exactGcd[d] ways;}return (int) exactGcd[1];}}核心思路说明这道题用容斥原理会更优雅比直接记忆化搜索更高效。· 正向转化先计算“所有选出的数都能被 d 整除”的方案数 totalWays(d)。因为每行只要选一个 d 的倍数即可用乘法原理就能算出。· 反向剔除totalWays(d) 其实统计的是 gcd d、2d、3d... 的方案总和。因此从大到小计算用 totalWays(d) 减去所有 gcd 是 d 倍数的方案数剩下的就是 gcd 恰好为 d 的方案数。· 高效预处理由于数值最大只有150提前把每个数的所有因子预处理出来。遍历矩阵时直接查表就能快速得到每行中能整除 d 的数字个数 cnt[i][d]。复杂度· 时间复杂度O(m * n * k V^2)其中 V150k 是因子个数很小。· 空间复杂度O(m * V)。

相关新闻

如何快速批量下载Iwara视频?这个免费工具让你5分钟搞定

如何快速批量下载Iwara视频?这个免费工具让你5分钟搞定

如何快速批量下载Iwara视频?这个免费工具让你5分钟搞定 【免费下载链接】IwaraDownloadTool Iwara 下载工具 | Iwara Downloader 项目地址: https://gitcode.com/gh_mirrors/iw/IwaraDownloadTool 还在为Iwara上喜欢的视频无法离线观看而烦恼吗?今…

2026/7/26 10:40:07 阅读更多 →
基于DNS协议的AI工具发现机制:原理、实现与应用

基于DNS协议的AI工具发现机制:原理、实现与应用

这次我们来看一个很有意思的技术项目——"AI Tool Discovery at Scale: All You Need Is DNS"。这个项目提出了一种全新的AI工具发现机制,核心思路是利用DNS协议来实现大规模AI工具的自动发现和调用。 传统的AI工具集成往往需要复杂的API对接和配置&…

2026/7/26 10:40:07 阅读更多 →
10分钟上手use-methods:构建高效React计数器应用的终极教程

10分钟上手use-methods:构建高效React计数器应用的终极教程

10分钟上手use-methods:构建高效React计数器应用的终极教程 【免费下载链接】use-methods A simpler way to useReducers 项目地址: https://gitcode.com/gh_mirrors/us/use-methods use-methods是一个简化React状态管理的终极工具,它继承了useRe…

2026/7/26 10:40:07 阅读更多 →

最新新闻

KMS智能激活脚本:一键解决Windows和Office激活难题的终极方案

KMS智能激活脚本:一键解决Windows和Office激活难题的终极方案

KMS智能激活脚本:一键解决Windows和Office激活难题的终极方案 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统弹出激活提示而烦恼?Office突然变成只读模…

2026/7/26 10:52:11 阅读更多 →
TMS320C5514 DSP引脚复用技术详解:EBSR寄存器配置与工程实践

TMS320C5514 DSP引脚复用技术详解:EBSR寄存器配置与工程实践

1. 项目概述与EBSR寄存器核心价值在嵌入式DSP系统开发中,尤其是面对像TMS320C5514这类引脚资源相对紧凑的芯片时,如何让有限的物理引脚“身兼数职”,是每个硬件和底层软件工程师必须直面的挑战。引脚复用技术,就是解决这一矛盾的核…

2026/7/26 10:52:11 阅读更多 →
深岩银河存档修改终极指南:3分钟掌握游戏全内容解锁技巧

深岩银河存档修改终极指南:3分钟掌握游戏全内容解锁技巧

深岩银河存档修改终极指南:3分钟掌握游戏全内容解锁技巧 【免费下载链接】DRG-Save-Editor Rock and stone! 项目地址: https://gitcode.com/gh_mirrors/dr/DRG-Save-Editor 还在为深岩银河的资源短缺而烦恼?想要快速体验所有职业和装备却不想花费…

2026/7/26 10:52:11 阅读更多 →
DyberPet:基于PySide6的桌面宠物框架开发指南与架构解析

DyberPet:基于PySide6的桌面宠物框架开发指南与架构解析

DyberPet:基于PySide6的桌面宠物框架开发指南与架构解析 【免费下载链接】DyberPet Desktop Cyber Pet Framework based on PySide6 项目地址: https://gitcode.com/GitHub_Trending/dy/DyberPet DyberPet是一个基于Python PySide6框架开发的开源桌面宠物系统…

2026/7/26 10:52:11 阅读更多 →
如何快速修复VisualGGPK2兼容性问题:完整操作指南

如何快速修复VisualGGPK2兼容性问题:完整操作指南

如何快速修复VisualGGPK2兼容性问题:完整操作指南 【免费下载链接】VisualGGPK2 Library for Content.ggpk of PathOfExile (Rewrite of libggpk) 项目地址: https://gitcode.com/gh_mirrors/vi/VisualGGPK2 当《流放之路》更新到新版本后,你可能…

2026/7/26 10:52:11 阅读更多 →
终极抖音批量下载工具:5分钟配置,一键保存无水印视频与音乐

终极抖音批量下载工具:5分钟配置,一键保存无水印视频与音乐

终极抖音批量下载工具:5分钟配置,一键保存无水印视频与音乐 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browse…

2026/7/26 10:51:10 阅读更多 →

日新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/26 0:00:31 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/26 0:00:31 阅读更多 →

月新闻