自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 20200326

**Image file is truncated( bytes not processed)**https://zhuanlan.zhihu.com/p/132554622

2021-03-26 12:03:29 84

原创 2021-03-23

torchvision.modelshttps://blog.csdn.net/u014380165/article/details/79119664cv2.imread()和cv2.cvtColor() 的使用1、cv2.imread()接口读图像,读进来直接是BGR 格式数据格式在 0~255需要特别注意的是图片读出来的格式是BGR,不是我们最常见的RGB格式,颜色肯定有区别。2、cv2.cvtColor(p1,p2) 是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。cv2.

2021-03-23 13:50:58 109

原创 2021-03-22

指定gpuimport os#多块使用逗号隔开os.environ['CUDA_VISIBLE_DEVICES'] = '2'-1表示禁用gpucpu转gpu.cuda()变成.cpu()torch.load(args.model_path,‘cpu’)下载包要用install下载torch torchvision 不能用conda

2021-03-22 19:23:03 109

原创 基础计算几何

https://blog.csdn.net/codeswarrior/article/details/82414781

2020-11-04 19:55:12 89

原创 树链剖分

树链剖分可以把树上一条路径变成logn个连续序列。对每个序列再用数据结构去维护(线段树/树状数组/分块)#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longconst int N=1e5+100;int a[N];int h[N],ver[N*2],ne[N*2],tot;

2020-10-12 22:05:31 56

原创 Hang Gliding(dp)

在对线段排完序之后s[i][j]已经不能表示第i个人的第j个工作的价值,应该是s[i][leg[j].x].怎么老有坑让我掉。。。。以前竟然没有这样错过#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<vector>using namespace std;struct Node{ int l,r,w,id;}leg[

2020-10-10 10:29:35 212

原创 扫描线

线段树要求的被覆盖的线段的总长由于两个性质:1.只关心线段树根节点上被矩形覆盖的长度2.修改操作总是成对出现。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<vector>using namespace std;const int N=1e4+100;struct Node{ double y,x1,x2;int i

2020-10-06 17:55:40 56

原创 Optimal Coin Change(多重背包)

多重背包记录路径:记录路径就是从后往前看每个状态是由哪个状态转移过来的。链接:http://icpc.upc.edu.cn/problem.php?cid=2590&pid=6#include <iostream>#include <string.h>using namespace std;const int N=2010;int cnt[N];int n,W;int w[N],v[N];int dp[N][N];int main(){ int m,n

2020-10-05 19:08:40 82

原创 树上莫队

可以把树上的一条链变成一位序列 然后用普通莫队求解需要求出树欧拉序(和dfs序不同)这颗树欧拉序为:1 4 8 8 4 3 7 7 6 6 5 5 3 2 2 1根据欧拉序求出每个点第一次出现的位置和最后一次出现的位置first[1]=1 first[2]=14last[1]=16 last[2]=15对于每次询问(l,r):假设first[l]<first[r]如果l是r的祖先节点: l到r经过的点就是first[l]到first[r]序列中只出现一次的点。如果l不是r的祖先节点

2020-10-03 10:46:10 253

原创 回滚莫队

插入易做 删除不易1.暴力求块内询问

2020-10-01 14:12:06 198

原创 带修莫队

块大小取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 110

原创 基础莫队

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 68

原创 文件输入输出

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

2020-09-18 09:36:03 71

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

给定一个整数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 276

原创 sg函数

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

2020-09-17 21:25:54 65

原创 高斯消元

#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 64

原创 扑克牌(期望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 99

原创 绿豆蛙的归宿(期望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 71

原创 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 149

原创 欧拉路

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

2020-09-08 17:43:22 94 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 101

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

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

2020-09-08 16:47:28 201

原创 负载平衡问题

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 121

原创 运输问题(费用流 )

#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 110

原创 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 87

原创 树的同构

同构:对于两棵树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 438

原创 石油大 磨合(思维)

1.按照x从小到大排序2.i从1到n遍历,i之后的y一定选。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<set>using namespace std;const int N=1e5+100;struct Node{ int x,y;}a[N];bool cmp(Node a,Node b){ return

2020-08-31 15:53:38 82

原创 小青争的零食(矩阵快速幂)

#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longconst ll mod=1e9+7;struct mat{ ll a[5][5];};mat operator*(mat x,mat y){ mat ans; memset(ans.a,0,sizeof ans.a)

2020-08-31 14:16:46 170

原创 奇妙养乐多(二分 )

答案具有单调性 多考虑二分这道题最大的坑是他爆ll 。。。做题的时候要特意计算一下是否会爆int,爆ll#include<cstdio>#include<iostream>#include<cstring>#include<algorithm>using namespace std;#define ll long longconst int N=1e6+100;ll a[N];int n;ll k;ll m;bool check(ll x

2020-08-31 11:49:57 349

原创 石油大 Addition Robot(线段树+矩阵乘)

把线段树的每个节点看成一个矩阵。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define ll long longusing namespace std;const int N=1e5+100;const int mod=1e9+7;char s[N];struct mat{ ll m[3][3];};struct Node{ int

2020-08-31 10:24:29 99

原创 有源汇上下界最大/小流

最大流:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<queue>using namespace std;const int N=210,M=(10300+210)*2,inf=1e8;int h[N],edge[M],f1[M],f2[M],ver[M],ne[M],tot;int num[N];int s,t;i

2020-08-27 20:34:56 60

原创 无源汇上下界可行流

#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<queue>using namespace std;const int N=210,M=(10300+210)*2,inf=1e8;int h[N],edge[M],f1[M],f2[M],ver[M],ne[M],tot;int num[N];int s,t;int d[

2020-08-27 12:10:33 60

原创 飞行员配对方案问题(网络流 二分图)

题目:https://www.acwing.com/problem/content/2177/#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<queue>using namespace std;const int N=200+10,M=(110*110+210)*2,inf=1e8;int h[N],ver[M],edge[

2020-08-25 15:01:15 84

原创 O(N) 求 1~N 逆元 模板及证明

https://blog.csdn.net/liyizhixl/article/details/78426576

2020-08-06 23:43:35 118

原创 Road To The 3rd Building HDU - 6827(期望)

一定要记录一下这道题。虽然自己找的规律比较复杂但起码是对的。结果因为n*(n+1)会爆Int自闭了一下午。#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longconst ll mod=1e9+7;const int N=2e5+100;ll sum[N],sum1[N],s

2020-08-06 23:39:23 139

原创 Little Rabbit‘s Equation(模拟)

答案一定要比数字的每一位大#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longchar s[100];int main(){ while(scanf("%s",s+1)!=EOF) { int flag=0; int len=strlen(s+1); int m

2020-08-06 23:10:48 125

原创 牛客多校6 - Harmony Pairs(数位dp)

题目大意:给出一个数字 n ,规定 S( x ) 为数字 x 的数位和,现在问有多少对 ( A , B ) ,满足 A <= B 且 S( A ) > S( B )#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longint bits[110];ll f[110][20

2020-08-06 01:21:18 84

原创 大整数

int: -21 4748 3648 ~ 21 4748 3647 (21*10^8)longlong: -922 3372 0368 5477 5808 ~ 922 3372 0368 5477 5807 (922*10^16)unsigned long:0 ~ 1844 6744 0737 0955 1615 (1844*10^16)__int128:128位只能在Linux环境下使用__int128。但是cin和cout都无法输出__int128的,我们需要自己写个读入输出。#incl

2020-08-03 21:36:06 97

原创 牛客多校七 Dividing(数论分块)

数论分块:求n/1+n/2+n/3+…+n/k的和#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define ll long longll mod=1e9+7;int main(){ ll n,k; scanf("%lld%lld",&n,&k); ll a

2020-08-02 01:04:36 120

原创 Tokitsukaze and Rescue HDU - 6797(最短路+爆搜)

简单猜测构成最短路的边不会很多。(因为每条边的边范围权一样的,所以如果要构造一条比当前最短路的边多还要短的路径的话对每条边的边权限制就要比之前更严格……虽然具体概率不会算就是了)这个思路比赛的时候就想到了,一直在想每次删掉最短路中的那条边最优,结果是个爆搜。而且我比赛的时候竟然没看了一下时间限制,以后一定要记住。题目中的边权随机很重要,我看题的时候自动忽略了。。#include<cstdio>#include<cstring>#include<iostream&gt.

2020-07-29 16:42:31 156

空空如也

空空如也

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

TA关注的人

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