LightOj 1298
来源:互联网 发布:herry it 编辑:程序博客网 时间:2024/06/06 03:10
题目大意:
已知
思路:
可以枚举
如果为没有出现过的数,即该数与枚举到当前情况的积互素,乘以
否则乘以
即:
#include <iostream>#include <cstring>#include <cstdio>#define LL long long#define N 502#define M 4000#define MOD 1000000007using namespace std;bool not_prime[M];int prim[N*2];LL dp[N][N];void init(){ memset(not_prime, 0, sizeof(not_prime)); memset(dp, 0, sizeof(dp)); prim[1] = 0; int cnt = 0; for(int i = 2; i < M; i++) { if(!not_prime[i]) { prim[++cnt] = i; for(int j = i + i; j < M; j += i) { not_prime[j] = 1; } } } dp[0][0] = 1; for (int i = 1; i <= 500; i++) { for (int j = 1; j <= i; j++) { dp[i][j] = (dp[i][j] + dp[i-1][j] * prim[j]) % MOD; dp[i][j] = (dp[i][j] + dp[i-1][j-1] * (prim[j] - 1)) % MOD; } }}int main(){ init(); int T; scanf("%d", &T); for (int cas = 1; cas <= T; cas++) { int n, m; scanf("%d%d", &n, &m); printf("Case %d: %lld\n", cas, dp[n][m]); } return 0;}
0 0
- LightOj 1298
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- [LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- LightOJ
- <java API源码初体验>2---collection集合之LinkedList原理分析
- 设计模式——单例模式(Singleton)
- Modular exponentiation
- 分布式数据库应用开发正解
- 链接之外部链接与内部链接
- LightOj 1298
- 最明白的JAVA——回调机制
- Android开发之java代码工具类。判断当前网络是否连接并请求下载图片
- 用AdoDataSet实现数据表的导入导出
- 拒绝别人是一种煎熬
- 链式哈希表
- 关于本blog
- 招聘需求系列之四
- 分布式文件系统:原理、问题与方法