Loading

摘要: 题目 依旧是 T4 找不到原题 挂个 pdf 题目下载 算法 由于题目给的特殊性质 两条斜线都可以映射到 \(x\) 轴上处理 题目转化成线段上维护 \(\text{并长 } \times \sqrt{2}\) 于是非常好打 但是要先离散化, 注意离散化之后要记录原长, 因为离线知道了查询的所有节点 阅读全文
posted @ 2024-10-11 16:45 Yorg 阅读(22) 评论(0) 推荐(0)
摘要: 算法 考虑转化 每个点 \(p_i\) 在一个平面直角坐标系中表示为点 \((i, p_i)\) 于是转化为一个棋盘问题, 即每一个点不能在 同一行 / 同一列 \(a\) 数组的限制相当于在左下角为 \((0, 0)\), 右上角为\((i, i)\) 中的正方形中, 有 \(a_i\) 个棋子 阅读全文
posted @ 2024-10-11 16:23 Yorg 阅读(39) 评论(0) 推荐(0)
摘要: 算法 考虑求小于给定值的数的个数,可以给每个块再维护一个已经排好序的数组,整块加法对于这个块排好序的数组没有影响,零散块加法直接在原序列上加,再将零散块所处的整块从新排序。查询时零散块暴力查找,整块二分查找 代码 #include <bits/stdc++.h> #define int long l 阅读全文
posted @ 2024-10-11 15:50 Yorg 阅读(20) 评论(0) 推荐(0)
摘要: 算法 容易发现行列的交换操作互不影响 又因为如果 \(a \leftrightarrow b, b \leftrightarrow c\) 那么显然 \(a \leftrightarrow c\) 由此想到把所有交换操作维护连通块, 对于每个连通块内的点, 总方案数就是块大小的阶乘 证明 块中可通过 阅读全文
posted @ 2024-10-11 11:54 Yorg 阅读(24) 评论(0) 推荐(0)