
ACM
jacksonhhhh
这个作者很懒,什么都没留下…
展开
-
[ACM - STL] next_permutation( ) & prev_permutation( )函数
next_permutation( ) 和 prev_permutation( ) 函数基本类似,都需要用到头文件名next_permutation()函数用法:next_permutation(first,last)作用:next_permutation()函数将 [ first , last ] 区间中的序列转换为字典序的下一个排列。如果下一个排列存在返回true,如果下一个排列不存在(即区间中包含的是字典序的最后一个排列),则该函数返回false,并将区间转换为字典序的第一个排列。代码实现#原创 2021-10-19 00:03:52 · 174 阅读 · 0 评论 -
[ACM] 高精度模板
1.高精度加法复杂度O(n)#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;#define DEBUG(x) cerr << #x << "=" << x << endlconst int L = 110;string a, b;string add原创 2021-10-18 18:01:56 · 172 阅读 · 0 评论 -
[ACM] 复杂度分析
博主经常做题的时候死在复杂度上于是会经常TLE或者MLE于是决定痛改前非一.看题目数据范围确定复杂度数据在1e18就是O(logn)数据在1e7以上就是O(n)数据在1e5 ~ 1e6就是O(nlogn)数据在1e3就是O(n2)二.根据所用算法估计复杂度三.根据时间限制和空间限制来确定复杂度的极限时间限制(以CCF老爷机为准):1s 大约1e8,卡常卡的好的话1e9,如果超过范围的话会TLE空间限制:128MB大约3千万的样子,但是在做题的时候最好不要把空间全部占满,因为还要留一部分原创 2021-10-18 08:06:18 · 565 阅读 · 0 评论 -
[ACM模板] 堆优化Dijkstra
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <queue> using namespace std;//#define DEBUG(x) cerr << #x << "=" << x << endlconst int maxn = 1e6 + 10;struct原创 2021-10-18 08:05:53 · 97 阅读 · 0 评论 -
[ACM] 在线 离线 强制在线
博客背景OI/ACM中,在做区间查询,区间修改等问题的时候,经常会听到各位大佬说到“离线”、“在线”等令我一脸懵逼的名词,所以决定要搞懂是什么意思。博客正文一.简单的理解在线和离线可以简单的理解为对于所有的操作是否需要读入完毕。二.标准理解和要求在线的要求是可以不用先知道所有的操作(类似询问、修改),边读入边执行,类似“走一步,做一步”的思想。离线则与在线相反,要求必须知道所有的操作,类似"记录所有步,回头再做”的思想,一般用Query[ ]记录所有操作。三.常见的算法常见的在线算法:带有原创 2021-10-18 08:05:35 · 2166 阅读 · 0 评论