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

题解:洛谷 P3861 拆分

【题目来源】

洛谷:P3861 拆分 - 洛谷

【题目描述】

给定一个整数 \(n\),求将 \(n\) 分解为互不相同的不小于 \(2\) 的整数的乘积的方案数。答案模 \(998244353\)

【输入】

第一行一个整数 \(T\),表示数据组数。

接下来 \(T\) 行,每行一个整数 \(n\),意义如描述所述。

【输出】

一共 \(T\) 行,每行一个整数,表示答案。

【输入样例】

1
688

【输出样例】

6

【算法标签】

《洛谷 P3861 拆分》 #动态规划DP# #数论# #洛谷原创# #洛谷月赛# #O2优化#

【代码详解】

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1000005, mod = 998244353;
int t, n, cur, a[N];
int pos1[N], pos2[N];
int dp[7005][7005];
int k, pos, s;signed main()
{cin >> t;while (t--){cur = 0;memset(dp, 0, sizeof(dp));cin >> n;s = sqrt(n);// 找出n的所有因子for (int i = 1; i * i <= n; i++)if (n % i == 0){a[++cur] = i;if (i * i != n)  // 避免重复添加平方数a[++cur] = n / i;}// 对因子排序sort(a + 1, a + cur + 1);// 建立因子的位置映射for (int i = 1; i + i <= cur + 1; i++){pos1[a[i]] = i;           // 小于等于sqrt(n)的因子映射到前半部分pos2[a[i]] = cur + 1 - i; // 大于sqrt(n)的因子映射到后半部分}// 动态规划dp[1][1] = 1;  // 从因子1开始for (int i = 1; i <= cur; i++)for (int j = 2; j <= cur; j++){dp[i][j] = dp[i][j-1];  // 不选第j个因子if (j > i) continue;  // 保证因子递增if (a[i] % a[j] == 0)  // 如果a[j]是a[i]的因子{k = a[i] / a[j];  // 计算比值if (k <= s)pos = pos1[k];  // 小因子位置else pos = pos2[n / k];  // 大因子位置dp[i][j] = (dp[i][j] + dp[pos][j-1]) % mod;  // 状态转移}}cout << (dp[cur][cur] - 1 + mod) % mod << endl;  // 输出结果}  return 0;
}

【运行结果】

1
688
6
http://www.jsqmd.com/news/397145/

相关文章:

  • GESP2024年3月认证C++二级( 第三部分编程题(1) 乘法问题)
  • Java synchronized关键字详解:从入门到原理
  • 题解:洛谷 P1495 【模板】中国剩余定理(CRT)/ 曹冲养猪
  • CSP-J2025游记
  • 题解:洛谷 P4942 小凯的数字
  • P3143 [USACO16OPEN] Diamond Collector S
  • 蛇和锯子的羁绊
  • 题解:洛谷 P2704 [NOI2001] 炮兵阵地
  • 北京字画回收|上门服务,当场现金结算,丰宝斋让你变现无忧 - 品牌排行榜单
  • 题解:洛谷 P1879 [USACO06NOV] Corn Fields G
  • Lambda架构在智能家居大数据处理中的实践
  • 题解:洛谷 P2831 [NOIP 2016 提高组] 愤怒的小鸟
  • 题解:洛谷 P1450 [HAOI2008] 硬币购物
  • 提示工程架构师晋升难?因为你没搞懂这套「成长地图」
  • 大数据领域数据工程的数据迁移工具
  • 探索新高度!AI应用架构师在AI模型持续优化中的突破
  • 企业级Docker镜像仓库Harbor部署实战
  • 惊叹!提示工程架构师让区块链与提示系统结合焕发新活力
  • 探索光伏发电混合储能系统模型:从理论到仿真
  • 题解:洛谷 P1040 [NOIP 2003 提高组] 加分二叉树
  • LangGraph 实战:10分钟打造带“人工审批”的智能体流水线 (Python + LangChain)
  • 惊艳全场!大数据数据采集的实战妙招
  • 题解:洛谷 P1896 [SCOI2005] 互不侵犯
  • 直通上海智推时代:官方联络通道一站式汇总 - 速递信息
  • AI写作后如何添加个人观点让论文更真实?降AI的终极心法
  • 题解:洛谷 P2014 [CTSC1997] 选课
  • 武汉疆灵科技:深耕低空经济 打造无人机,具身智能人形机器人载人无人驾驶航空器维修与维修人才技能培训全国标杆 - 速递信息
  • 精准对接上海智推时代:官方沟通入口全收 - 速递信息
  • 题解:洛谷 P1063 [NOIP 2006 提高组] 能量项链
  • 动态中位数