随笔分类 -  ACM

上一页 1 ··· 3 4 5 6 7 8 下一页

__int128使用
摘要:输入输出模板: __int128无法使用cin和cout进行输入输出,所以只能自己写一个输入输出的模板: #include <bits/stdc++.h> using namespace std; void scan(__int128 &x)//输入 { x = 0; int f = 1; char 阅读全文

posted @ 2018-10-06 10:38 solvit 阅读(1004) 评论(0) 推荐(0)

FFT 快速傅里叶变换
摘要:参考 阅读全文

posted @ 2018-10-03 14:23 solvit 阅读(143) 评论(0) 推荐(0)

HDU4762 Cut the Cake
摘要:HDU4762 Cut the Cake 思路:公式:n/m(n-1) //package acm; import java.awt.Container; import java.awt.geom.AffineTransform; import java.math.*; import java.ut 阅读全文

posted @ 2018-10-03 09:50 solvit 阅读(152) 评论(0) 推荐(0)

STL排序函数
摘要:Qsort,Sort,Stable_sort,Partial_sort,List::sort 参考 阅读全文

posted @ 2018-10-02 13:31 solvit 阅读(117) 评论(0) 推荐(0)

弗洛伊德Floyd求最小环
摘要:模板: #include<bits/stdc++.h> using namespace std; const int MAXN = 110; const int INF = 0xffffff0; int temp,Map[MAXN][MAXN],Dist[MAXN][MAXN],pre[MAXN][ 阅读全文

posted @ 2018-10-02 10:58 solvit 阅读(544) 评论(0) 推荐(0)

莫比乌斯反演
摘要:莫比乌斯函数: void get_mu(int n) { mu[1]=1; for(int i=2;i<=n;i++) { if(!vis[i]){prim[++cnt]=i;mu[i]=-1;} for(int j=1;j<=cnt&&prim[j]*i<=n;j++) { vis[prim[j] 阅读全文

posted @ 2018-10-01 17:29 solvit 阅读(115) 评论(0) 推荐(0)

后缀自动机
摘要:参考: 陈立杰的课件 参考1 阅读全文

posted @ 2018-09-16 19:13 solvit 阅读(113) 评论(0) 推荐(0)

ACM-ICPC 2018 南京赛区网络预赛
摘要:A An Olympian Math Problem #include <bits/stdc++.h> using namespace std; typedef long long ll; ll T,n; int main(){ scanf("%lld",&T); while(T--){ scanf 阅读全文

posted @ 2018-09-15 19:18 solvit 阅读(221) 评论(0) 推荐(0)

ACM-ICPC 2018 沈阳赛区网络预赛
摘要:A Gudako and Ritsuka B Call of Accepted C Convex Hull D Made In Heaven #include <bits/stdc++.h> using namespace std; const int MM = 1e5+5; const int I 阅读全文

posted @ 2018-09-15 18:47 solvit 阅读(206) 评论(0) 推荐(0)

ACM-ICPC 2018 徐州赛区网络预赛
摘要:A Hard to prepare #include <bits/stdc++.h> using namespace std; #define N 1000005 long long mod = 1e9 + 7; long long power(long long a,long long b){ a 阅读全文

posted @ 2018-09-15 18:42 solvit 阅读(254) 评论(0) 推荐(0)

ACM-ICPC 2018 焦作赛区网络预赛
摘要:A Magic Mirror #include <bits/stdc++.h> using namespace std; char s[20]; int main() { int T; scanf("%d",&T); cin.ignore(); while(T--){ gets(s); int le 阅读全文

posted @ 2018-09-15 17:56 solvit 阅读(594) 评论(0) 推荐(0)

STL容器 set
摘要:基础: set是关联容器,set中每个元素的值都是唯一的,系统能够根据元素的值自动进行排序。set中数元素的值并不能直接被改变。STL中还有一些标准关联容器multiset、map 和 multimap 等,这些关联容器内部均是采用红黑树实现的。 set特点: ①、map和set的插入删除效率比其他 阅读全文

posted @ 2018-09-15 11:35 solvit 阅读(253) 评论(0) 推荐(0)

Tarjan 总结
摘要:Tarjan 基础 dfn[i]: 在dfs中该节点被搜索的次序(时间戳)。 low[i]: 为i或i的子树能够追溯到的最早的栈中节点的次序号。 当 dfn[i] == low[i] 时,为i或i的子树可以构成一个强连通分量。 void tarjan(int x) { id++; dfn[x] = 阅读全文

posted @ 2018-09-12 21:13 solvit 阅读(313) 评论(0) 推荐(0)

RMQ
摘要:·离线快速区间求最值,O(nlogn)预处理,O(1)查询。 ·dp[i][j]表示第i位带i+2^j-1位的区间最大值或区间最小值。 ·预处理的转移方程为 dp[i][j]=max(dp[i][j-1],dp[i+(1<<(j-1))][j-1]; 将区间一分为二。 ·查询的时候:l-r区间查询, 阅读全文

posted @ 2018-09-02 11:10 solvit 阅读(338) 评论(0) 推荐(0)

数位dp
摘要:数位dp:f[i][j] 表示i位数满足j的情况下的个数,然后用记忆化搜索的写法来解决转移和统计的问题。 HDU3555 Bomb 题意:求1到n中含49的数的个数。 思路:·pos:当前位数。 ·st:高位状态(st=0:前几位中没有49;st=1:前一位是4;st=2:前几位中有49)。 ·fl 阅读全文

posted @ 2018-08-31 12:34 solvit 阅读(227) 评论(0) 推荐(1)

线段树区间更新
摘要:区间更新:运用延迟标记(或则说是懒惰标记),简单说就是每次更新的时候不要更新到底,运用延迟标记使得更新延迟到下次需要更新或者询问的时候。 HDU1698 Just a Hook 线段树功能:update成段区间更新,由于query只查询总区间,所以直接输出1结点(根节点)。 #include<bit 阅读全文

posted @ 2018-08-30 20:10 solvit 阅读(181) 评论(0) 推荐(0)

线段树单点更新
摘要:单点更新:最基础的线段树,只更新叶子结点,然后用PushUp函数将信息更新上来。 HDU1166 敌兵布阵 线段树功能:update单点增减,query区间求和。 #include<bits/stdc++.h> using namespace std; #define lson l, mid, ro 阅读全文

posted @ 2018-08-30 13:39 solvit 阅读(345) 评论(0) 推荐(0)

2018 “百度之星”程序设计大赛 - 复赛
摘要:1001 没有兄弟的舞会 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 100005; int t,n; int a[maxn],fa[maxn]; struct node { 阅读全文

posted @ 2018-08-30 13:38 solvit 阅读(267) 评论(0) 推荐(0)

线段树个人代码风格
摘要:· maxn是题目所给的最大区间,即数据范围,当然有时候会做离散化。结点数要开4*maxn,准确地说是大于maxn的最小的2^x的两倍。 · lson和rson分别表示节点的左儿子和右儿子。 · PushUp(int root)是把当前节点的信息更新到父亲结点。 · PushDown(int roo 阅读全文

posted @ 2018-08-30 12:40 solvit 阅读(148) 评论(0) 推荐(0)

Codeforces Round #506 (Div. 3) E
摘要:Codeforces Round #506 (Div. 3) E dfs+贪心 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 200005; int n,u,v; int ans 阅读全文

posted @ 2018-08-28 18:18 solvit 阅读(214) 评论(0) 推荐(0)

上一页 1 ··· 3 4 5 6 7 8 下一页

导航