摘要: 原题链接 题解 考点:带权并查集。 设 $d[x]$ 表示 $x$ 节点前面的战舰数量,$s[x]$ 表示以 $x$ 节点为首的那一列战舰的总数,合并操作如下: void add(int x,int y) { int a=find(x),b=find(y); fa[a]=b; d[a]=s[b]; 阅读全文
posted @ 2022-07-06 11:22 Epoch_L 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 原题链接 前言 蓝题祭。。。 题解 本题最大的难点就是判两个星系是否相似,根据数学知识,如果两个星系中的每个点之间的距离之和相等,则可以判断它们 $similar$。这样就简单了。 代码 $1625B$,$90$ 行。。。真的超长 Code: #include<bits/stdc++.h> usin 阅读全文
posted @ 2022-07-06 11:20 Epoch_L 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 原题链接 题解 考虑DP,我们设 $f[i]$ 表示前 $i$ 头奶牛所能取到的最大值,则在 $(i-k,i)$ 区间中必须有一头奶牛不取,假设它是 $j$,则 $$ f[i]= \max(f[j-1]+s[i]-s[j]) $$ 其中 $s$ 数组表示前缀和。 观察转移方程,发现 $s[i]$ 是 阅读全文
posted @ 2022-07-06 11:00 Epoch_L 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 原题链接 题解 设 $f[i]$ 表示跳到 $i$ 所能取到的最大价值,则我们需要取一个 $j(j<i)$ 使 $f[j]+sum[i]-sum[j]-i100$ 最大,其中 $sum$ 数组表示前缀和,所以转移方程即为: $$ f[i]=\max(f[j]+sum[i]-sum[j]-i100) 阅读全文
posted @ 2022-07-06 10:57 Epoch_L 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 原题链接 序言 本题下面将给出 $3$ 种做法,分别为: $O(n^3)$ 暴力算法。 $O(n^2)$ 费用提前计算,小优化。 $O(nlogn)$ 斜率优化。 洛谷数据很水,$O(n^2)$ 就可以过,加强版的链接贴上 loj10186 题解 Part 1:暴力算法 设 $f[i][j]$ 表示 阅读全文
posted @ 2022-07-06 10:56 Epoch_L 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 巨佬学长 zyf 写的一份高精。 使用方法:使用 bign 定义高精度,maxlen 代表最大位数,好像最大 20000,不然 MLE+TLE+RE+CE。 读入高精要在快读时处理。 namespace zyf{ struct bign{ static const int maxlen=200,wi 阅读全文
posted @ 2022-07-02 17:39 Epoch_L 阅读(98) 评论(0) 推荐(0) 编辑