原题目

  Describe:质数问题

  code:

#pragma GCC optimize(2)
#include<bits/stdc++.h>
#define KKK 1200
using namespace std;
int lasts,n,m,prime[10015],tot,ans;
int maxn,sum[KKK],f[KKK][20];
bool b[KKK];
inline void work(int x){
for(int i=1;i<=tot&&prime[i]<=sqrt(x);i++)
if(x%prime[i]==0)return;prime[++tot]=x;b[x]=1;
}
inline int read(){
int ret=0,f=1;char ch=getchar();
while (ch<'0'||ch>'9') {if (ch=='-') f=-f;ch=getchar();}
while (ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return ret*f;
}
inline void write(int x){
if(x<0){putchar('-');write(-x);return;}
if(x/10) write(x/10);
putchar(x%10+'0');
}
int main(){
// freopen("sum.out","w",stdout);
prime[++tot]=2;f[0][0]=1;
for(register int i=4;i<=KKK;i+=2)b[i]=1;
for(register int i=3;i<=KKK;i+=2)work(i); //打表质数 for(register int i=1;i<=tot;i++){
for(register int j=1200;j>=prime[i];j--){
for(register int k=15;k>=1;k--){
f[j][k]+=f[j-prime[i]][k-1]; //从上一个质数跳转
}
}
}
n=read(),m=read();
while(n&&m){
write(f[n][m]);
puts("");
n=read(),m=read();
}
return 0;
}

  

最新文章

  1. python中的argparse
  2. Javascript之旅——第三站:几个需要注意的运算符
  3. 2016 Multi-University Training Contest 8
  4. &lt;mvc:annotation-driven /&gt;注解意义
  5. 修改docker的默认存储位置
  6. 【原】Docker
  7. C#中的线程(中)-线程同步
  8. 要删除共享的初始登陆名 cmd下输入net use * /delete
  9. python文件和文件夹訪问File and Directory Access
  10. pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)
  11. POST 请求中 multipart/form-data、 application/x-www-form-urlencoded 的区别
  12. python selenium-webdriver 元素定位(三)
  13. 事务、cookie、session操作
  14. as3 有趣现象 关于声明与变量
  15. Ionic实战三:Ionic 图片预览可放大缩小左右滑动demo-iClub图片预览
  16. springboot securyt 默认的用户名和密码
  17. (转)《SSO CAS单点系列》之 实现一个SSO认证服务器是这样的!
  18. Golang笔记之变量
  19. STM32(5)——通用定时器基本定时器
  20. CF932E Team Work——第二类斯特林数

热门文章

  1. MyBatis Dao层的编写
  2. wumii 爆款总结经验
  3. 清除DNS解析缓存
  4. Java核心API需要掌握的程度
  5. Redis的下载与安装
  6. STM32学习笔记:为什么使用外部中断要打开syscfg时钟?
  7. P1070 结绳
  8. jvm问题汇总
  9. Java笔记--枚举&amp;注解
  10. Day7 - C - Saddle Point ZOJ - 3955