给定给 \(n\) 个点,以及 \(m\) 条线段,选择 \(s\) 条线段,使得至少被一个线段覆盖的点的坐标从小到大排序后,第 \(k\) 大最小,没有则输出 \(-1\)。 \(n, m, s, k \leq 1500\)。 二分答案 \(ans\),判断是否存在一个方案使小于等于 \(ans\ ...
分类:
其他好文 时间:
2021-01-07 12:42:20
阅读次数:
0
链接 : http://codeforces.com/problemset/problem/1443/C 标签 : binary search greedy sorting *1400 二分答案 AC代码 #include <bits/stdc++.h> using namespace std; # ...
分类:
其他好文 时间:
2020-11-06 01:18:03
阅读次数:
19
*前置知识: 前缀和:$sum_i$表示$0-i$内的所有数的和,求[i-j]内所有数的和就可以用$sum_j-sum_{i-1}$ 1 for(int i=1;i<=n;i++) 2 {cin>>a[i];sum[i]=sum[i-1]+a[i];} 3 for(int i=1;i<=q;i++) ...
分类:
其他好文 时间:
2020-10-10 17:43:39
阅读次数:
18
HDU 6231 K-th Number 题目大意: 给一个序列A,将其所有的大于等于K长度的子区间中,第K大的数取出来,放到B数组中。求B数组中第M大的数。 思路: 将所有的区间都取出来显然不行,时间复杂度爆炸。维护起来更奇怪。 可以考虑二分答案——先二分出这个B数组中第M大的数x,然后判断行不行 ...
分类:
其他好文 时间:
2020-09-18 01:16:59
阅读次数:
36
二分答案,设$s_{i,j}$表示第$i$天对竹子$j$的操作次数,$h_{i,j}$表示第$i$天结束时竹子$j$的高度,则$h_{i,j}=\max(h_{i-1,j}-ps_{i,j},0)+a_{j}$,合法当且仅当$h_{0,i}=h_{i}$且$h_{m,i}\le ans$ 令$h'_ ...
分类:
其他好文 时间:
2020-09-03 17:08:46
阅读次数:
58
跳石头 描述 一年一度的“跳石头”比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。 为了提高比赛难 ...
分类:
编程语言 时间:
2020-08-28 15:02:14
阅读次数:
73
题意:有$n$个点,$m$条边,只有当你的智力值大于这条边的$w$才能走,问在花费不超过$k$的情况下,从$1$走到$n$的所需的最小智力值. 题解:这题比赛为什么没想出来呢?赛后看题解发现可以二分答案然后跑最短路来check,网上的题解全都是SPFA啊,我还是喜欢写dijkstra qwq. 代码 ...
分类:
其他好文 时间:
2020-08-26 18:34:26
阅读次数:
47
本题的high level的思想是二分搜索这样的substring最多能有多长。对于一个固定的len,如果能在S里找到两处相同的子串滑窗,那么我们就可以对len的搜索往上调整;反之,我们就必须将len的搜索往下调。 于是本题转化为,如果快速在S里找到两处相同的、长度都是len的滑窗。比较直观的想法是 ...
分类:
其他好文 时间:
2020-07-27 09:41:50
阅读次数:
90
跳石头 简单的二分答案,贪心地判断解 #include<bits/stdc++.h> #define fi first #define se second #define pb push_back #define mp make_pair #define SZ(x) ((int)x.size()) ...
分类:
其他好文 时间:
2020-07-26 23:05:34
阅读次数:
73
前言 一道超级好的模型题,构建模型的思想直接学习(集训队的果真都是巨佬啊!!) 题目描述 跳跳棋是在一条数轴上进行的。棋子只能摆在整点上。每个点不能摆超过一个棋子。 我们用跳跳棋来做一个简单的游戏:棋盘上有$3$颗棋子,分别在$a,b,c$这三个位置。我们要通过最少的跳动把他们的位置移动成$x,y, ...
分类:
其他好文 时间:
2020-07-24 21:58:31
阅读次数:
71