自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 带修莫队

块大小取n2/3优于取sqrt(n)的情况,总体复杂度O(n5/3)。大小为pow(n t,1/3) 时间复杂度pow(n n* n *n *t,1/3)#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>using namespace std;const int N=1e4+100;int a[N];struc

2020-09-30 22:23:54 144

原创 基础莫队

sqrt(n) O(msqrt(n))sqrt(n*n/m) O(nsqrt(m))排序:奇数块从小到大 偶数块从大到小#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>using namespace std;const int N=2e5+100;const int M=1e6+100;int cnt[M

2020-09-30 08:48:48 76

原创 文件输入输出

https://www.cnblogs.com/bwjblogs/p/12614644.html

2020-09-18 09:36:03 87

原创 能被整除的数(容斥原理)

给定一个整数n和m个不同的质数p1,p2,…,pm。请你求出1~n中能被p1,p2,…,pm中的至少一个数整除的整数有多少个。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longll p[110];int main(){ int n,m; scanf("%d%d",&am

2020-09-17 21:43:27 301

原创 sg函数

有向图游戏给定一个有向无环图,图中有唯一的起点,在起点上放有一枚棋子。两名玩家交替地把这枚棋子沿有向边进行移动,每次可以移动一步,无法移动着判负。任何一个公平组合游戏都可以转化为有向图游戏。把每个局面看成图中的一个节点,并且从每个局面沿着合法行动能够到达的下一个局面连有向边。链接:https://www.acwing.com/problem/content/895/#include<cstdio>#include<cstring>#include<iostream

2020-09-17 21:25:54 77

原创 高斯消元

#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>#include<cmath>using namespace std;double a[110][110];const double eps=1e-6;int n;int gauss(){ int c,r; for(c=0,r=0;c<n;c++) { int t=r;

2020-09-15 11:00:44 77

原创 扑克牌(期望dp)

链接:https://www.acwing.com/problem/content/220/一定要走他所有可能走的路。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;double dp[20][20][20][20][5][5];int A,B,C,D;double dfs(int a,int b,int c,i

2020-09-12 10:26:07 117

原创 绿豆蛙的归宿(期望dp)

链接:https://www.acwing.com/problem/content/219/期望dp和普通dp并没有啥区别。只要记住:数学期望是随机变量取值与概率的乘积之和。就可以知道该如何转移。期望dp一般起点有1个,而终点有多个。一般从终点开始往前推,这就可以用到记忆化搜索。初始化double数组是最好不要用memset#include<cstdio>#include<cstring>#include<iostream>#include<al

2020-09-10 16:59:00 85

原创 Discrete Centrifugal Jumps CodeForces - 1407D(单调栈拓展)

这道题让我对单调栈的功能有了新的认识。。。我以前还以为单调栈只能求一个数前面第一个比他大/小的数首先定义dp[i]:当前共有i栋楼表示到第i栋楼的最小步数。根据条件有如下转移:1.dp[i]=dp[i-1]+1;2.i前面有一个下标假设为j,且这个j满足(a[j]>max(a[j+1]…,a[i-1]); dp[i]=dp[j]+1;3.i前面有一个下标假设为j,且这个j满足(a[j]<min(a[j+1]…a[i-1]);dp[i]=dp[j]+1;条件1很好转移,条件2和3类似,

2020-09-09 21:46:51 158

原创 欧拉路

无向图存在欧拉路充分必要条件1.连通图2.两个或零个点的度数是奇数,其他点的度数都是偶数。无向图存在欧拉回路充分必要条件1.连通图2.点的度数都是偶数。无向图存在欧拉路充分必要条件1.连通图2.一个点的入度比出度大一,一个点的出度比入度大一,其他点的出度入度相等。或者所有点的出度入度都相等。无向图存在欧拉回路充分必要条件1.连通图2.所有点的出度入度都相等。...

2020-09-08 17:43:22 146 1

原创 铲雪车(欧拉路)

链接:https://www.acwing.com/problem/content/1125/无向图一条边要不同方向经过两次相当于两条有向图。所以个点的入度都等于出度,一定存在欧拉回路。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>using namespace std;double dis(double a

2020-09-08 17:38:19 123

原创 冗余路径(无向图边双联通分量)

链接:https://www.acwing.com/problem/content/397/任意两点之间至少有两条不相交的路径(点可以相交,边不能相交)变充分必要条件是该图是边双连通图。题目求将一个连通图变为边双连通图至少要加多少条边。无向图经过e-DCC缩点后会变成森林或者一棵树(联通分量内部一定不需要加边)。本题答案为(叶子节点数量+1)/2#include<cstdio>#include<cstring>#include<iostream>#incl

2020-09-08 16:47:28 234

原创 负载平衡问题

https://www.acwing.com/problem/content/2196/#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int N=5010,M=200010,inf=1e8;int S,T;int h[N],e[M],f[M],w[M],ne[M],idx;int q[N],d[N]

2020-09-05 15:27:01 135

原创 运输问题(费用流 )

#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int N=5010,M=200010,inf=1e8;int S,T;int h[N],e[M],f[M],w[M],ne[M],idx;int q[N],d[N],pre[N],incf[N];bool st[N];void add(int a,i

2020-09-05 15:03:24 123

原创 Binary Tree HDU - 5573(二进制)

讲解:https://blog.csdn.net/nbl97/article/details/78305345#include<iostream>#include<algorithm>#include<cstdio>#include<cstring>using namespace std;#define ll long longint N,K;int main(){ int t,h=1; scanf("%d",&t); whil

2020-09-02 10:44:56 95

原创 树的同构

同构:对于两棵树A, B,如果能通过重新标号使得两棵树完全相同,则称树A和B同构例1.Subway tree systems POJ - 1635题意:给出两棵树的表示法,判断两棵树是否同构思路:把树的表示法变成最小表示法,看两棵树最小表示法是否一样有根树同构,无非是把子树的顺序换了一下#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include&

2020-09-01 13:22:18 473

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除