摘要: 题意 跑两边spfa的水题,注意判断有人才取最大值 代码 cpp include using namespace std; inline int read(){ int x=0,f=1; char ch=getchar(); while(ch'9'){ if(ch==' ') f= 1; ch=ge 阅读全文
posted @ 2019-08-27 09:47 End_donkey 阅读(149) 评论(0) 推荐(0)
摘要: 题意 1到n个自然数中选k个自然数要求两两不相邻,问有多少种方法,模m eg(1 3 5 ) 又是一道打表规律题,正常解法dp可以通过前缀和优化到O(N K)。另外我们可以重新定义F[I,J]表示从1到I中选择J个不连续数的方案数。通过考虑I选还是不选来进行状态转移。 1.如果不选I:则方案数为F[ 阅读全文
posted @ 2019-08-27 09:45 End_donkey 阅读(156) 评论(0) 推荐(0)
摘要: T3 "颜色" 100/100 对于这题由于数据范围小,有一种神奇的做法,我们可以把每个值随机赋值,但是保证相同颜色的和为0,就代表消去了这个颜色,我们只要取寻找合法区间就行,合法区间的寻找只要找相同前缀和就行,因为相同前缀和之间这一段为0,也就代表这一段是合法区间。 代码 cpp include 阅读全文
posted @ 2019-08-27 09:42 End_donkey 阅读(129) 评论(0) 推荐(0)
摘要: 一道最短路的题,找一个买入和卖出相差最高的点即可,我们先以1为起点跑spfa,d1[x]不再表示距离而表示能够经过权值最小的节点的权值即 我们在建反图,对于n点再跑spfa,算出最大值即 cpp if(d2[y] using namespace std; const int N=100010,M=5 阅读全文
posted @ 2019-08-27 09:39 End_donkey 阅读(157) 评论(0) 推荐(1)
摘要: 题意 给定一个长度为N的数列A,以及M条指令 (N≤5 10^5, M using namespace std; const int maxn=500010; struct node{ int l,r; long long data; } t[maxn 4]; long long a[maxn],b 阅读全文
posted @ 2019-08-27 09:38 End_donkey 阅读(356) 评论(0) 推荐(0)
摘要: 给定长度为N的数列A,以及M条指令 (N≤500000, M≤100000),每条指令可能是以下两种之一: “2 x y”,把 A[x] 改成 y。 “1 x y”,查询区间 [x,y] 中的最大连续子段和,即 max(x≤l≤r≤y)⁡ { $\sum_{i=l}^r$ A[i] }。 对于每个询 阅读全文
posted @ 2019-08-27 00:53 End_donkey 阅读(191) 评论(0) 推荐(0)
摘要: ![](https://enddonkey.oss-cn-beijing.aliyuncs.com/博客/1566838025607.jpg) ![](https://enddonkey.oss-cn-beijing.aliyuncs.com/博客/mm_facetoface_collect_qrcode_1566838038890.png) ![](https://enddonkey.oss... 阅读全文
posted @ 2019-08-27 00:49 End_donkey 阅读(217) 评论(1) 推荐(0)
摘要: 树状数组 1 单点修改,区间查询 这个没啥好讲的,修改加查询即可,查询时利用前缀和相减即可。 代码 cpp include using namespace std; const int maxn=1000010; int n,q,u,v,k,a[maxn]; long long c[maxn]; i 阅读全文
posted @ 2019-08-27 00:16 End_donkey 阅读(287) 评论(1) 推荐(0)
摘要: 题意 有一个划分成n列的星际战场,各列编号为1,2.....n。有n艘战舰,也依次编号1,2.....n,其中第i号战舰位于第i列。 有m条指令,每条指令格式如下 1. M i j 表示让第i号战舰所在列的全部战舰保持原有顺序,接在第j艘战舰的尾部。 2. C i j 表示询问第i艘战舰和第j艘战舰 阅读全文
posted @ 2019-08-26 22:31 End_donkey 阅读(205) 评论(0) 推荐(0)
摘要: 一道水题,由于x坐标递增y坐标也递增于是前缀和统计即可,用树状数组实现。 cpp include using namespace std; const int maxn=15010; const int maxx=32010; inline long long read(){ long long x 阅读全文
posted @ 2019-08-26 22:29 End_donkey 阅读(139) 评论(0) 推荐(0)