自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

恒持此志成永志

谁终将声震人间,必长久深自缄默;谁终将点燃闪电,必长久如云漂泊。

  • 博客(521)
  • 资源 (2)
  • 收藏
  • 关注

原创 torch 的 dim 和 numpy 的axis 表示方向不同

1. torch中以index_select为例子torch.index_select(input, dim, index, out=None)- 功能:在维度dim上,按index索引数据- 返回值:依index索引数据拼接的张量 - index:要索引的张量 - dim:要索引的维度 - index:要索引数据的序号x = torch.randn(3, 4)print(x)indices = torch.tensor([0, 2])torch.index_s...

2021-07-22 11:58:00 451 1

原创 python 中的“三目运算符”

c++,java中的三目运算符:若a大于b,c值为value1,否则为value2c = a>b?value1:value2在python等价写法如下c = value1 if a>b else value2

2021-07-20 15:17:44 254

原创 numpy 安装

在cmd 命令下输入pip(Scripts下查看pip版本) install python中Scripts文件夹位置\下载对应版本(例如Py3.8则下载cp38)的numpy(下载后放在Scripts目录下)

2021-05-08 16:28:57 349

原创 P1198 [JSOI2008]最大数 线段树入门

#include <bits/stdc++.h>#define ll long longconst int maxn = 200005;using namespace std;ll mod;struct N{ ll val,mx;}no[maxn<<2];void build(int p,int l,int r){ no[p].val = -1e18;...

2019-10-07 20:16:36 383

原创 P3119 [USACO15JAN]草鉴定Grass Cownoisseur 缩点 topo或最长路

题意:n个点m条有向边,可以来回走一个点,问在可以逆行一次的情况下最多有能经过多少个不同的点。解:先缩点去环建新图,新图建正序(表示以1为起点到达的点)和逆序(以1为终点到达的点) ,然后最长路求出从1到每个点经过不同点的最大数目正向.f[i]和反向.f[i] ,最后枚举每一条边,计算ans和当前边两点最大值。输出ans - sum[belong[1]] ,因为这个重复了。其他细节见...

2019-10-06 20:17:07 342

原创 P2746 [USACO5.3]校园网Network of Schools 缩点拓扑

题意:n个点,接下来n行每行代表第i 个点和这一行的点有一条有向边,每行以0结束。两个问题:1.最少从几个点出发能到达所有点, 2.使得任意一点出发能到达所有点最少加多少条有向边。解:先缩点建图,强连通缩点后图上就没有环只有链,那么每条链就有唯一入度为0的点1.图中入度为0点的个数,2.出度和入度为0的最大者(加边使得不存在出度和入度为0的点)。注意只有一个连通块 特判!...

2019-10-05 15:42:43 360

原创 P3469 [POI2008]BLO-Blockade tarjan割点

题意:有n个点m条无向边,每个点要拜访其他所有点,总共有n*(n-1)次拜访次数。保证图联通,问禁止通行某个点后一共会少多少次拜访次数。输出n行,每行代表 i点禁止通行会减少的拜访次数。解:如果这个点不影响图的联通性,则答案为2*(n-1),也即他不能到所有的n-1个点,n-1个点也不能到达他。如果影响图的联通性,也就是割点,则答案再加上各个分量累乘之和,采用tarjan求割点时,由于是像...

2019-10-05 14:16:38 227

原创 P1525 关押罪犯 并查集

题意:将一些人分成两部分,m条x与y之间有w的值,求分配后的最大的值尽量小。注意没有输出0贪心,并查集#include <bits/stdc++.h>using namespace std;const int maxn = 20005;struct N{ int x,y,z;}no[100005]; bool cmp(N c,N d){ return c.z&...

2019-10-02 18:33:42 242

原创 P1268 树的重量 思维

题意: 告诉图中任意两点最短路,求所有路之和。显然#include <bits/stdc++.h>using namespace std;int dis[35][35];int main(){ int n; while(scanf("%d",&n)&&n){ for(int i=1;i<=n-1;i++){ for(int ...

2019-10-02 17:17:17 138

原创 P1113 杂务 拓扑

#include <bits/stdc++.h>#define ll long long using namespace std;const int maxn = 100000000;int head[maxn];int cnt;int val[20005],in[20005];bool book[20005];int ans[20005];int n,as;...

2019-10-02 16:33:27 226

原创 P2154 [SDOI2009]虔诚的墓主人

题意:给出n,m ( n,m<=1e9 ),表示一个矩阵 (0,0)到(n,m)有w棵(w<=1e5)常青树,求这个矩阵的虔诚度,虔诚度的定义如下:对于矩阵上任意一点,正上下左右方向有恰好k棵(k<=10)常青树的方案数。例如某一点四个方向依次有 2,2,2,3此时 k = 2,则虔诚度为 3。 保证 w棵常青树位置各不相同,并给出w个坐标每个代表一颗常...

2019-10-01 17:10:25 199

原创 P1641 [SCOI2010]生成字符串 组合数学

题意:现有n个1和m个0个字符组成的字符串,任意前k个字符1的个数不小于0的个数,求解决方案数,结果对20100403取模。题解:(盗图1和0的个数和为x轴,1和0的个数差为y轴。则需要从(0,0)走到(n+m,n-m),选则1则意味着向右上走一格(1和0的和加1,1和0的差加1),同理选择0意味着向右下方走一格。不考虑限制条件,要走n+m步,其中选择n步向右上方走,也即...

2019-09-29 20:17:14 547

原创 2019 CCPC 秦皇岛 MUV LUV EXTRA kmp

传送门枚举循环节已出现的长度 p,最优的循环节就是最后 p 个字 符构成的字符串的最短周期。 考虑把字符串倒过来,使用 kmp 可以求出每个前缀的最短 周期,即求出了原串每个后缀的最短周期。 #include<iostream>#include<algorithm>#include<string.h>#include<stri...

2019-09-28 20:46:43 388

原创 2019 CCPC 重现赛 1006 基环树

设图中环的大小分别为 c1, c2, ..., ck,不属于任何一个环的 边数为 b,则答案为:2^b*(2^c1 - 1)*...*(2^ck - 1)#include<bits/stdc++.h>using namespace std;const int maxn = 3e5 + 10;const int mod = 998244353;typede...

2019-09-28 16:20:20 183

原创 2019 CCPC 秦皇岛 Escape 最大流

Problem Description给一个 n×m 大小的迷宫,左上角为 (1,1) ,右下角为 (n,m) 。迷宫中的每个 1×1 的格子要么是障碍,要么为空。有 a 个机器人要从迷宫上方走到迷宫下方,其中第 i 个机器人的初始位置为 (1,pi) 的正上方,不妨记为 (0,pi) ,初始运动方向为向下,即 (1,0) 。迷宫有 b 个出口,其中第 i 个出口位于 (n,ei) 的正下...

2019-09-28 15:44:14 698

原创 __int 128 的输入和输出

输入:inline void read(__int128 &X){ X = 0; int w=0; char ch=0; while(!isdigit(ch)) {w|=ch=='-';ch=getchar();} while(isdigit(ch)) X=(X<<3)+(X<<1)+(ch^48),ch=getchar(); if (w) X ...

2019-09-20 21:06:28 597

原创 ICPC Asia Shenyang 2019 Dudu's maze

这两次被dfs上了两课。hhh题意:一个迷宫有n个房间,m条路,房间除了糖果就是怪物。小明从1号房间出发,他足够聪明且知道地图,遇到怪物必须使用传送门,传送门会将你传送到和当前房间连接的任意一间(每边等概率,有重边)。不过传送门只能使用一次。问最大的糖果期望。解:dfs#include <bits/stdc++.h>#define ll long long...

2019-09-16 17:01:53 224

原创 2019 南昌网络赛 H The Nth Item

我觉得好假啊。把if else位置换了,就过了。还有人预处理前 N项过的,我矩阵快速幂不服,连1e18数据都没有。因为有循环节,所以标记,也可以直接找循环节更快。#include <bits/stdc++.h>#include <cstring>#define ll long longusing namespace std;const ll mo...

2019-09-08 20:08:58 245

原创 2019亚洲区域赛徐州网络赛 M Longest subsequence

by duhui记录每一个字母出现位置,贪心找 。#include <bits/stdc++.h>using namespace std;const int maxn = 1e6+5;int nex[maxn][26];char s[maxn],t[maxn];int ns,nt;int main() { scanf("%d %d",&ns,&...

2019-09-07 21:27:46 251

原创 牛客练习赛51 D 羊吃草

建图没什么好说的,跑最大流原来的权值会被破坏,需要记录重新赋值。#include <bits/stdc++.h>using namespace std;#define ll long long#define INF 0x7ffffffconst int M = 1000005;const int inf = 0x7fffffff;struct E { int nx...

2019-09-07 11:22:22 183

原创 Codeforces1214 D Treasure Island

题意:给你一张图 ,从 1,1走到n , m问最少堵多少点,使得路不连通解:最多 2个,两次深搜。#include <bits/stdc++.h>using namespace std;const int maxn = 1000005;int dir[2][2] = {1,0,0,1};int s,t;char mp[maxn];int n,m,vi...

2019-09-05 16:52:32 433

原创 南京网络预选赛 The Preliminary Contest for ICPC Asia Nanjing 2019 B. super_log 欧拉降幂

模拟欧拉降幂#include <bits/stdc++.h>#include <iostream>#include <cmath>#include <cstdio>#include <cstring>#include <utility>#include <cstdlib>#include &...

2019-09-01 20:20:07 133

原创 南京网络预选赛 The Preliminary Contest for ICPC Asia Nanjing 2019 F 主席树 或 滑动窗口

链接查询区间 [ id-k,id+k]小于val的个数num ,再在该区间查询第 num大的数。从小到大做,则每次只要找一次就行。 O(n*log2n)#include <bits/stdc++.h>using namespace std;const int maxn = 200005;int sum[maxn*20+5];//sum为森林的不同根结点...

2019-09-01 19:57:11 200

原创 南京网络预选赛 The Preliminary Contest for ICPC Asia Nanjing 2019 H. Holy Grail 多源最短路

链接#include <bits/stdc++.h>#define ll long longusing namespace std;const int MAX_N = 305;ll g[MAX_N][MAX_N]; // 算法中的 G 矩阵int n,m; void init() { for (int i = 0; i < n; ++i) { fo...

2019-09-01 19:53:56 225

原创 HDU 5458 Stability(树链剖分+ 并查集)

题意:给出一张N个点,M条边的无向图,有两个操作:1.删除(u, v)间的一条边2.如果删除(u, v)间的一条边可使其不连通,找出这样的边的个数,就是找(u, v)间桥的个数询问时 ,处理到同一条重链 ,要( l+1, r ),这样就是边权思路:首先离线这些操作,时光倒流从最终状态逆着加边加回原图,可以考虑用并查集建树,然后以树作为最终状态,再树链剖分预处理下,建一颗线段...

2019-08-28 16:38:43 176

原创 SPOJ 375 边操作

给一颗树,每条边有一个权值。有两种操作:1、修改某条边的值;2、询问a、b两点路径上边权的最大值。#include <iostream>#include <bits/stdc++.h>using namespace std;#define pii pair<int,int>#define ll long long#define mst(a,b...

2019-08-27 20:31:48 122

原创 hdu 3966 树链剖分 点操作

/*by SilverN*/#include<iostream>#include<algorithm>#include<cstring>#include<cstdio>#include<cmath>#define LL long longusing namespace std;const int mxn=10001...

2019-08-27 20:25:29 212

原创 P3384 树链剖分 点操作

操作1: 格式: 1 x y z 表示将树从x到y结点最短路径上所有节点的值都加上z操作2: 格式: 2 x y 表示求树从x到y结点最短路径上所有节点的值之和操作3: 格式: 3 x z 表示将以x为根节点的子树内所有节点值都加上z操作4: 格式: 4 x 表示求以x为根节点的子树内所有节点值之和输入格式第一行包含4个正整数N、M、R、P,分别表示树的结点个数、操作个数...

2019-08-27 19:36:50 122

转载 KMP模板及优化

https://blog.csdn.net/Anoy_acer/article/details/82748344

2019-08-23 14:27:36 132

原创 2019牛客暑期多校训练营(第九场) D Knapsack Cryptosystem 折半搜索

求36个数中选哪些数之和为s。2^36很大,2^18 = 26144,预处理出前18位所有组合,然后再处理后18位#include <bits/stdc++.h>#define ll long longusing namespace std;map<ll,int> q;int n;ll s,a[50],sum;int main(){ scan...

2019-08-22 19:30:09 128

原创 2019牛客暑期多校训练营(第八场)E - Explorer

给你 n 个点,m 条边,每条边给你一组数 (u, v, l, r) 代表如果你想从u点走到v点,你的身高需要满足范围 [ l , r ] ,问你从 1 走到 n 点,你有多少种身高可以选择。解:先对所有的l, r 离散化建线段树,每个结点表示大于等于当前点小于下一个点的 区间,比如有 1 5两个点,线段树中就有一个结点表示区间 [1,4]。 建树如果当前边能在该结点表示的区间...

2019-08-22 15:48:42 146

原创 2019牛客暑期多校训练营(第七场) E Find the median 权值线段树+区间离散化

讲的挺好每个叶子结点表示大于等于当前这个点小于后面一个点的 区间,对这些点建线段树,查询区间第 (n+1)/2大#include <bits/stdc++.h>#define ll long longusing namespace std;const int N = 4e5 + 10;struct No{ int rt,lazy,cnt; ll sum;...

2019-08-22 10:11:24 118

原创 2019 牛客暑期多校训练营(第十场) E Hilbert Sort 分治

参考https://blog.csdn.net/qq_42391248/article/details/81331940对每个点进行编号,排序输出即可#include <bits/stdc++.h>#define ll long longusing namespace std;ll f(int n,int x,int y){ if(n==0)return 1; ...

2019-08-18 08:57:08 216

原创 hdu6638 Snowy Smile (最大权值和矩阵、线段树维护最大子段和)

#include <bits/stdc++.h>#define ll long long#define ls rt<<1#define rs rt<<1|1using namespace std;const int maxn = 1e5;struct N{ ll lm,rm,mm,sum;}t[maxn<<2];void p...

2019-08-10 00:20:10 209

原创 2019 HDU多校第五场 1002.three arrays(01字典树)

原文 #include <bits/stdc++.h>#define rep(i,j,k) for(int i=j;i<=k;i++)using namespace std;const int maxn = 1e5+10;struct Trie{ int next[maxn*30][2]; bool end[maxn*30]; int cnt[maxn*30]...

2019-08-07 10:34:45 146

原创 HDU 6628 (2019杭电第五场 1005) permutation 1 (全排列)

题意:求 n的 全排列 差值序列(后一项减前一项 n-1项) 第 k 小的全排列,2 <=n<=20, 1<= k <=min(10000,n!)题解:8!= 40320 > max (k) 预处理大于等于8的数,8之后就是a[1] = n 的全排列。#include <bits/stdc++.h>using namespace st...

2019-08-06 15:20:20 256

原创 HDU 6624 (2019杭电第五场 1001) fraction (辗转相除求最小分数解 )

题意:分数取模的意义是 a/b = x(mod p),告诉你 p和x,求最小的分数解a/b解:#include <bits/stdc++.h>#define ll long longusing namespace std;void gao(ll pa,ll pb,ll qa,ll qb,ll &x,ll &y){ ll z = (pa+pb-1)/...

2019-08-06 10:39:13 570

原创 HDU 6629 (2019杭电第五场 1006) string matching (扩展kmp)

题意: 求字符串s[i…len−1] and s[0…len−1] i>0 最长公共前缀长度求解过程的比较次数题解: 当时一看就直接AC自动机然后用fail指针就行,结果输入字符是ASCII那就超内存了。用扩展kmp求出每一个后缀的最长公共前缀求和即可。注意 当前下标加上最长前缀长度超过字符串长 ans--。因为是求比较次数。扩展KMP解决的问题:定义母串S和子串T,S...

2019-08-05 19:45:29 601 2

原创 2019牛客暑期多校训练营(第六场)J Upgrading Technology 后缀和

题意:有i个技能,每次升级都有花费cij,然后所有技能都达到j级送dj块钱,问你最多能赚多少解:先将花费乘-1转换为收益,对 a[i][j] 维护后缀和,表示 j+1~m 最大收益。然后 j 从1 到 m 遍历,j 表示当前某个技能的最低等级,找到 第 i 个技能 最小的后缀和,减去这个后缀和并加上其他技能的后缀和,再加上所以技能都达到 j 的收益取最大值。#include ...

2019-08-05 10:17:53 276

原创 2019 牛客暑期多校训练营 第五场 F maximum clique 1 最大独立集

题意:求n个点中bit至少有两位不同的数的最大个数并输出这些点解:至少两位补集是至多一位不同也即恰好一位不同,因为这些数相异 ,不存在0为不同。则原来求最大独立集 =点数 -最大匹配。用dinc求最大匹配,按照顶层和非顶层点输出#include <iostream>#include <cstring>#include <queue>...

2019-08-03 10:56:08 242

numpy-1.20.2-cp38-cp38-win_amd64.whl

python numpy 3.8 win-64

2021-05-08

贝尔曼.txt

算法模板

2018-01-08

空空如也

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

TA关注的人

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