
CSP
文章平均质量分 83
AC-Panda
敲代码的老熊猫
展开
-
2021 CSP-S2 题解(完整版)
[CSP-S 2021] 廊桥分配 一句话题意: 为国内航班和国际航分配廊桥的数量,使得最终停在廊桥的飞机总数最大。廊桥的使用原则是先到先得。 关键点: 廊桥是先到先得,不是自由分配! 所有的时间点是不同的(这是树状数组优化的前提) 数据量10510^5105, 复杂度确定为nlgnnlgnnlgn级别,排序是必须的,则剩余的处理大致是一个O(n), 或加一个logn优化。 分析 由于先到先得,所以按照区间起点排序。 先不考虑廊桥的数量,单纯从为每个飞机分配廊桥的角度出发。通过随手画几个数据例子可原创 2021-10-25 19:03:49 · 3777 阅读 · 0 评论 -
2021 CSP-J 题解
[CSP-J 2021] 分糖果 本题考查了一个数学的思路,没有什么难度。 一句话题意: 在区间[L, R]内找到一个数字x,使得x%n 最大。 分析: 从对n的余数的分布来考虑,余数总是: 0, 1, 2, …, n-1, 0, 1, 2, …, n-1, 0, …循环分布。并且每个为0的位置都是n的倍数。 因此可以知道,如果[L, R] 是跨越了一个0的区间,则一定存在余数为n-1。如果没有跨过,则余数在[L, R] 内递增分布。 #include <bits/stdc++.h> u原创 2021-10-24 15:36:39 · 6563 阅读 · 0 评论