zoukankan
html css js c++ java
Codeforces 385C Bear and Prime Numbers(素数预处理)
[Codeforces 385C Bear and Prime Numbers](http://codeforces.com/problemset/problem/385/C) 其实不是多值得记录的一道题,通过快速打素数表,再做前缀和的预处理,使查询的复杂度变为O(1)。 但是,
我在统计数组中元素出现个数时使用了map,以至于后面做前缀和的累加时,每次都要对map进行查询,以至于TLE。
而自己一直没有发现,以为是欧拉筛对于这道题还不够优,于是上网搜题解,发现别人的做法几乎一样,但是却能跑过,挣扎了许久才想起是map的原因。
map的内部实现是一颗红黑树,每次查询的复杂度为O(logN)
,在本来时间就不富裕的情况下,导致了超时。改用数组来统计后,顺利AC。做题时,在空间允许的情况下,如果每次可以确定访问的key,还是尽量用数组来做整数间的映射吧(如果每次要遍历一遍以查询,则选择map)。因为这道题纠结了许久,于是做个记录。 附上AC代码: ```C++ #include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std; typedef long long ll; typedef pair
P; typedef map
M; typedef vector
V; typedef queue
Q; const int maxn=10000000+5; int cnt[maxn]; bool is[maxn]; int prime[maxn/2]; ll sum[maxn]; void init(int mx) { int i,j,count=0; for (i=2;i<=mx;++i) { if (!is[i]) { prime[count++]=i; } for (j=0;j
>n; for (i=0;i
>m; while (m--) { int l,r; scanf("%d%d",&l,&r); l=min(maxn,l); r=min(maxn,r); printf("%d ",sum[r]-sum[l-1]); } return 0; } ```
查看全文
相关阅读:
【ArcGIS 10.2新特性】ArcGIS 10.2 for Desktop 新特性(二)
手势(Gesture)的增加和识别
[转]C#自定义开关按钮控件--附带第一个私活项目截图
当年的试用期周工作心得
FREESWITCH SEESION
基于三星ARM9(S3C2410)的交通违章抓拍系统的开发
Apache Kafka: Next Generation Distributed Messaging System---reference
How and Why Unsafe is Used in Java---reference
基于keepalived对redis做高可用配置---转载
Java获取真实的IP地址--转载
原文地址:https://www.cnblogs.com/orangee/p/8977964.html
最新文章
Twitter僵尸帐号厂商雇佣中国员工专填验证码_Web2.0
我在人民广场吃炸鸡_百度百科
微电影 排行榜
中间美术馆招募驻留项目志愿者(艺术家助理)
Dan计划:重新定义人生的10000个小时
Loser应该知道的6个残酷人生事实(血泪翻译)
检验美国高中生英文水平的100个单词,快来看看你认识多少吧。
关于泰捷软件
金融、经济学入门书单及基础概念
景甜_百度百科
热门文章
人熟就是宝
EF架构~XMLRepository仓储的实现
MVVM架构~knockoutjs系列之验证信息自定义输出~续
MVVM架构~knockoutjs系列之验证信息自定义输出
爱上MVC3系列~开发一个站点地图(俗称面包屑)
产品介绍~大叔管理系统
android LinearLayout等view如何获取button效果
POJ 1324 Holedox Moving 搜索
WEB打印的几种方案
利用规则引擎打造轻量级的面向服务编程模式
Copyright © 2011-2022 走看看