摘要:
[TOC] BZOJ2190仪仗队 [题目传送门][1] 题解 被机房大佬钦点sibo的一道题目,虽然好像真的并不是特别难。观察一下发现只有横纵坐标$gcd$为1的点才能被看到,而且这个图是对称的,所以相当于是求1到$n 1$的欧拉函数前缀和,然后乘以2加1,就是答案了。 code include 阅读全文
摘要:
[TOC] BZOJ3613 南园满地堆轻絮 [题目传送门][1] 题解 ~~这标题怎么那么鬼畜~~一眼可以看出来是二分。二分调整音符的幅度,然后对于每个音符,都尽量让它取符合条件的最小的值,如果仍然无法形成非递减,那么说明当前答案不合法,就增加左区间,反之减小右区间。 code [1]: http 阅读全文
摘要:
[TOC] BZOJ1084 最大子矩阵 [题目传送门][1] 题解 由于$m\leq 2$所以我们可以分两种情况讨论。$m=1$的时候就相当于一个数列,就是个很简单的$Dp$了。当$m=2$的时候,记$f[i][j][k]$表示第一列处理到第$i$行,第二列处理到第$j$行,已经选了$k$个子矩阵 阅读全文
摘要:
[TOC] BZOJ1036 树的统计Count [题目传送门][1] 题解 一道树剖裸题,拿来练练手。。 code include using namespace std; typedef long long ll; bool Finish_read; templateinline void re 阅读全文
摘要:
[TOC] BZOJ1452 Count [题目传送门][1] 题解 看到这题$c$的数据范围之后才发现这题是个水题,开100个二维树状数组记录每个颜色的个数,之后就能做到$log^2n$的询问和修改了。 code include using namespace std; typedef long 阅读全文
摘要:
[TOC] BZOJ2242 计算器 [题目传送门][1] 题解 一道比较模板的题目,第一个操作暴力快速幂搞,第二个操作暴力$Exgcd$搞,第三个操作暴力$BSGS$搞。注意判无解的情况就行了。 code include using namespace std; typedef long long 阅读全文
摘要:
[TOC] BZOJ2705 Longge的问题 [题目传送门][1] 题解 ~~表示数论题目根本不会~~这题一眼看过去,像是欧拉函数,结果也就是欧拉函数搞一搞,但是之前根本没学过,只能直接套个板子了。我们枚举$N$的每一个约数$X$,那么这个约数对于答案的贡献就是$Euler(N/X) X$。但是 阅读全文
摘要:
[TOC] BZOJ1509 逃学的小孩 [题目传送门][1] 题解 比较简单的一道题目,首先由于要构造一个最坏的情况,所以一定会走$A$到$B$这条路,那么$A$和$B$的地点一定是在树直径的两个端点上的。所以我们找出直径的两个端点之后,处理每个点到两个直径端点的距离$d1[i]$和$d2[i]$ 阅读全文
摘要:
[TOC] BZOJ1965 洗牌 [题目传送门][1] 题解 一道结论题,记数字$i$的位置为$pos[i]$,我们可以打表发现每一个数字在每次洗牌之后的位置是$pos[i] 2$ $Mod$ $(n+1)$,然后我们假设第$K$次洗牌之后排在第$L$位的在原数列上的排 阅读全文
摘要:
[TOC] BZOJ4034 树上操作 [题目传送门][1] 题解 裸的树剖,写的时候注意细节即可。 code include using namespace std; typedef long long ll; bool Finish_read; templateinline void read( 阅读全文