![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
乱搞
文章平均质量分 53
ljq真的不能再吃了
珍惜每一天
展开
-
Codeforces 1494D Dogeforces 并查集+构造
Dogeforces 题意 老板和员工,老板至少有两个员工,员工不会有下级员工,但是老板可能有自己的老板,那么公司的创始人自然就是树上的顶点 为最大的老板 nn的矩阵每个值 Ai,j 代表 i 员工与 j 员工 LCA(他们共同老板)的薪水,那么显然 Ai,i 代表第i个员工的薪水 给你薪水矩阵 构造出公司组织结构 Trick:我们发现创始人也就是最大的老板 他是可以连无数条边到自己的下属 于是我们将其单独抽出来 为第 n+1 个公司的人 也为公司创始人 这个矩阵是角平分线对称的 所以我们只需要考虑右上的情原创 2021-03-03 19:08:34 · 316 阅读 · 1 评论 -
【Codeforces 707 D】离线有向树
CF707D 题意 给你n个书架 每个书架上有m个位置可以放书 1 x y 操作代表 如果 x 书架上 y 位置是空的 那么就放一本书进去 2 x y 操作代表 如果 x 书架上 y 位置是有书的 那么就拿出一本书 3 x 操作代表 给 x 暑假取反 有书的部分取出书 没书的部分放入书 4 x 操作 代表 x 操作后的那个状态 对于每个操作执行结束后 都要输出书架上当前有多少书 然后对于这种...原创 2019-04-22 15:14:30 · 130 阅读 · 0 评论 -
【HDU 5616 Jam's balance】 折半枚举
hdoj5616 • n个砝码,可以放在天平左右两侧或不放 • m次询问,每次询问是否可以测出给定重量 • 1 ≤ n ≤ 20 • 1 ≤ m ≤ 100 容易想到3^20的做法 但是这样显然会超时 那么我们把他拆成两个也就是一半 注意砝码要嘛相加 要嘛大减小 用set存两种枚举会出现的大小 /* if you can't see the repay Why not just w...原创 2019-07-12 20:51:42 · 154 阅读 · 0 评论 -
【Codeforces 1180 B . Nick and Array】 思维加乱搞
这题也蛮有意思 给你n长度的数组 你可以把一项 arr[i] 变为 -arr[i] - 1 问你乘积最大的时候数组长啥样 做法不难发现一个数只有是负数的时候绝对值最大 所以我们取偶数个负数使得他绝对值最大而且又为正数 我们首先把数组所有元素转换成负数 因为-arr[i]-1保证负数存在 如果一个数组是偶数长度 我们直接取所有负数 否则我们取 n-1 个负数 并且让绝对值最大的负数变成正数 举个例子...原创 2019-07-14 18:24:40 · 162 阅读 · 0 评论 -
【Codeforces 1180 D. Tolik and His Uncle】 思维加构造
CF1180D 题意就是让你用不同的向量(dx,dy) x+dx,y+dy走路使得每一个格子都被走 构造题 用左右横跳来构造答案 1,1 -> n,m -> 1,2 -> n,m-1 -> … -> n,1 如果n为奇数最后一行也要按照上下横跳顺序解决 /* if you can't see the repay Why not just work st...原创 2019-07-14 18:27:23 · 214 阅读 · 0 评论