HDU 3972
来源:互联网 发布:古村之友 知乎 编辑:程序博客网 时间:2024/05/21 06:32
求N以前孪生素数个数。
预处理素数表,10W以内大约1W个素数。
讲道理,暴力不太稳妥,于是写了个树状数组。
可是似乎暴力也能过。。。。
#include <cstdio>#include <cstring>#include <cstdio>#include <iostream>using namespace std;const int MAXN=100001;bool prime[MAXN];int a[MAXN];int sum[MAXN];void init(){ memset(prime,false,sizeof(prime)); prime[0]=prime[1]=true; for(int i=2;i<MAXN;i++) if(!prime[i]){ if(i>MAXN/i)continue; for(int j=i*i;j<MAXN;j+=i) prime[j]=true; }} int lowbit(int x){ return x&(-x);}void add(int k,int delta){ while(k<=MAXN){ sum[k]+=delta; k+=lowbit(k); }}int query(int k){ int s = 0; while(k){ s+=sum[k]; k-=lowbit(k); } return s;}int main(){ init(); for(int i=5;i<=MAXN;i++) if(prime[i]==0&&prime[i-2]==0){ add(i,1); } int n; while(cin>>n,n>=0){ printf("%d\n",query(n)); } return 0;}
0 0
- HDU 3972
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- hdu-
- hdu
- hdu
- hdu
- ASCII对照表
- java基础之逻辑运算符
- 如何建立用户画像和用户体系?
- 初识JFinal
- oracle null与空字符串
- HDU 3972
- 【读书笔记】—— 《从 0 到 1》
- 操作系统内核开发:利用时钟中断实现光标闪烁特效
- Error type 3错误异常解决
- Disable Keyboard Shortcuts and Combination Keys with C# (1): Disable frequently used hotkeys
- 说说“猴子补丁”
- android 与H5交互之基本
- iOS 微信支付详细步骤
- 汇编笔记