随笔分类 - 模板
摘要:1 #include 2 3 using namespace std; 4 5 #define MP make_pair 6 #define PB push_back 7 #define ls first 8 #define rs second 9 typedef long long LL; 10 typedef pair PII; 11 const double eps...
阅读全文
摘要:1 #include 2 3 using namespace std; 4 5 #define MP make_pair 6 #define PB push_back 7 typedef long long LL; 8 typedef pair PII; 9 const double eps=1e-8; 10 const double pi=acos(...
阅读全文
摘要:1 typedef long long ll; 2 int a[20]; 3 ll dp[20][state];//不同题目状态不同 4 ll dfs(int pos,/*state变量*/,bool lead/*前导零*/,bool limit/*数位上界变量*/)//不是每个题都要判断前导零 5 { 6 //递归边界,既然是按位枚举,最低位是0,那么p...
阅读全文
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 struct Point 10 { 11 bool flag; 12 double x; 13 double...
阅读全文
摘要:1 struct Point{double x,y;}; 2 struct Circle{Point c;double r;}; 3 double dist(Point a,Point b){ 4 return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); 5 } 6 Circle ...
阅读全文
摘要:搬运别人的 https://vjudge.net/problem/SPOJ-CIRUT
阅读全文
摘要:地址: 题目: 带可选字符的多字符串匹配 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 763 Accepted Submission(s):
阅读全文
摘要:一点疑问: 当创建nq节点时,要不要把nq的cnt标记赋值为1? 讲道理nq节点也是代表一个子串啊,不过网上的模板都没赋值。 2017.9.18 update: 把memset部分重写,改成用节点用到时再初始化,初始化所有节点可能被卡。 fa,len,cnt数组其实不用清空,因为用时都赋值了。
阅读全文
摘要:1 struct RMQ 2 { 3 int log2[N],mi[N][25]; 4 void init(int n) 5 { 6 for(int i = 0; i > 1] + 1); 7 for(int j = 1; j < log2[n]; j ++) 8 for(int i = 1; i +...
阅读全文
摘要:1 int n,dg[K],topo[K]; 2 vectormp[K]; 3 int topo_sort(void) 4 { 5 queueq; 6 for(int i=1;i1) res=0; 12 int x=q.front();q.pop(); 13 topo[cnt++]=x; 14 for(int i=0;i...
阅读全文
摘要:1 #include 2 3 using namespace std; 4 5 #define MP make_pair 6 #define PB push_back 7 typedef long long LL; 8 typedef pair PII; 9 const double eps=1e-8; 10 const double pi=acos(-1.0); 11 ...
阅读全文
摘要:1 #include 2 #include 3 #include 4 #include 5 #pragma comment(linker,"/STACK:102400000,102400000") 6 using namespace std; 7 8 #define MP make_pair 9 #define PB push_back 10 typedef long...
阅读全文
摘要:树链剖分的实质:将一棵树划分成若干条链,用数据结构去维护每条链。 如:把边或点哈希到线段树(或其他数据结构)上进行维护和查询。 这样做的理由:从根到某一点的路径上,不超过logn条轻边和不超过logn条重路径。 下面开始介绍树链剖分的做法: size(u)为以u为根的子树节点个数(包括u),令v为u
阅读全文
摘要:伪素数: 如果存在和n互素的正整数a满足a^(n-1)≡1(mod n),则n是基于a的伪素数。 是伪素数但不是素数的个数是非常非常少的,所以如果一个数是伪素数,那么他几乎是素数。 Miller_Rabbin素数测试:随机选k个a进行a^(n-1)≡1(mod n)测试,如果都满足则判断n是素数。
阅读全文
摘要:单点更新,区间查询 区间增减,单点查询 区间增减,区间查询 二维树状数组:单点修改,区间查询 二维树状数组:区间修改,单点查询
阅读全文
摘要:1.把所需对拍的代码的可执行文件a.exe b.exe放在同一目录下 2.把rand数据的代码的可执行文件c.exe放在该目录下 3.新建一个txt文件,里面添加代码,后把格式改成bat 代码简单介绍: 1):loop类似c语言里面的标志,用于跳转(也就是循环). 2):第三行代码:先生成数据到da
阅读全文