喀什地区网站建设_网站建设公司_HTTPS_seo优化
2026/1/2 20:05:28 网站建设 项目流程

题目链接

洛谷 P1832 A+B Problem(再升级)

思路分析

这题同前几题一样,物体的重量与价值相同,只是需要我们自己寻找物品。由于问的是拆分成若干质数的和,所以应为完全背包求方案数,物品即为小于 \(n\) 的所有质数,遍历枚举即可。时间复杂度 \(O(n^2\sqrt{n})\)

代码呈现

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;const int N=1e3+10;
int n;
ll dp[N];bool isPrime(int x){for (int i=2;i*i<=x;++i){if (x%i==0) return 0;}return 1;
}
int main(){scanf("%d",&n);dp[0]=1;for (int i=2;i<=n;++i){if (isPrime(i)){for (int j=i;j<=n;++j) dp[j]+=dp[j-i];}}printf("%lld",dp[n]);return 0;
}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询