寒假集训随笔
1.对于一些复杂度的估计问题
signed main() {
int M=5e6;
int cont=0;
for(int i=2;i<=M;++i){
int Tem=M/i;
for(int j=2;j<=Tem;++j){
cont++;
}
}
cout<<cont;//cont=67896939
return 0;
}
这是ln的级数展开,也就是说比log还略小些
2.在一次训练赛中unordered_map TLE,map AC,说明在复杂度可以接受的前提下应优先考虑map
3.尽量不要写类似于fin(),fin2()这样两个名字类似的函数,尤其是当过程相似且有递归部分的时候,及其容易因为复制的时候忘改导致wa
4.define int long long常数巨大,如果IO规模较大(1e6)尽量不要使用
经过实验,最为耗时的点在于cout<<endl.强烈建议不要用endl,或define endl '\n'
write+printf大概快了1/6,而endl会直接导致TLE
5.比起用clear清空map,有的时候可以直接再执行一次内层循环来清除这次循环的贡献
6.注意bfs和dfs的写法,这是基础,但是最近写的效率并不高。当出现爆栈可能时优先考虑bfs
7.重建线段树时自己的板子要重置id=0;
8.
对于这道题,需要对质数的分布有一些了解:
(1)n到2n之间必有质数
(1)在本题范围内(n<=1e6),i与比i大的最小质数之间距离很近,大概不到100!
9.
template<class ForwardIt>
ForwardIt is_sorted_until(ForwardIt first, ForwardIt last);
返回第一个无序元素的迭代器,如果有序就是end
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端