摘要:
给定n个线段 求最少设立多少个点 能够让每个线段上都有一个点 在左端点建立,维护右边界 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #define ll 阅读全文
posted @ 2021-12-30 16:34
__iostream
阅读(39)
评论(0)
推荐(0)
摘要:
2. 畜栏预定 给定n个线段 每个位置可以存一个线段 最少多少个位置存现段让各个线段不存在交集 int main() { n=read(); q.push( (Node){0x3f3f3f3f,0} ); for(rint i=1;i<=n;i++) p[i].l=read(),p[i].r=rea 阅读全文
posted @ 2021-12-30 16:32
__iostream
阅读(62)
评论(0)
推荐(0)
摘要:
1. 防晒 给定若干个线段和若干个点 让每个点属于一个线段的匹配数目最大 贪心策略 按照左端点降序排序,每次选取能够用的中间最大的 如果是按照左端点升序排列,那么可能会出现下面线段包住上面线段的情况 我们要求的策略是: 对于当前线段内的每一个点 要么只有当前线段能用 要么两个都可以用 bool cm 阅读全文
posted @ 2021-12-30 16:31
__iostream
阅读(37)
评论(0)
推荐(0)
摘要:
定义一个序列的价值为序列中m对数的差的平方的和的最大值 给定一个序列 求把这个序列至少分成多少段,才能保证每一段的价值都不超过T 首先可以想到是答案具有单调性 二分答案 但是不好检验 所以我们需要换思路 根据排序不等式,这个值是将这个数组后排序后每次取最大的和最小的来累加答案 再经过分析可以发现 我 阅读全文
posted @ 2021-12-30 15:08
__iostream
阅读(43)
评论(0)
推荐(0)

浙公网安备 33010602011771号