![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
中位数
小菜鸡加油
菜鸡
什么都能折磨
展开
-
D. Max Median(思维+二分中位数+前缀)
https://codeforces.com/contest/1486/problem/D 题意: 给你一个长度为n的序列。让你找到一个长度不小于k的连续子序列,使得它的中位数最大。 一个长度为n的序列的中位数是排序后第⌊2n+1⌋位置的值. 思路: 二分中位数,然后将>=mid的设为1,小于mid的设为0.然后看是否存在一段区间和>0的且其长度>=k. 对于是否存在长度>=k且区间和>0怎么判断? 预处理前缀和。然后枚举右端点i,如果前面[1,i-k]存在一个原创 2021-02-24 10:32:00 · 381 阅读 · 0 评论 -
美丽的路径(二分中位数+check by dfs)
https://ac.nowcoder.com/acm/contest/9985/A 有n个点,m条边,每个点有一个全值。起点是s,终点是t,设美丽路径为s到t路程中第k/2+1小的数,求最大的美丽值是多少。 思路: 第k/2+1小的数,sort后其实就是中位数把。关于中位数的题一般是二分的trick。过一段时间我把二分中位数,二分平均值的题再补一下。 然后题目的情况如果有两个连着的1,因为可以来回一直走这两个1,所以最后结果>mid-->l=mid; 然后另外一种情况就是要使1的个数原创 2021-02-24 00:49:53 · 175 阅读 · 2 评论 -
B. Eastern Exhibition(二维中位数)
https://codeforces.com/contest/1486/problem/B 思路: 一维中位数(数轴) 奇数的时候只有中间的元素。偶数的时候中间两个之间的数都可以取。 二维分成x,y分别sort后取一维中位数,算交叉面积 #include<iostream> #include<vector> #include<queue> #include<cstring> #include<cmath> #include<map原创 2021-02-19 12:06:57 · 371 阅读 · 1 评论 -
B. Nice Matrix(思维+回文矩阵构造+中位数)
https://codeforces.com/contest/1422/problem/B 思路:从头开始一个一个去放,发现对应要相等的位置只有对应的四个角落。边界是在边长都为奇数的中间十字。所以n^2循环把对应四个点都求出来,取他们的中位数就好了。因为中位数到这些数的距离和时最小的。 #include<iostream> #include<vector> #include<queue> #include<cstring> #include<cma原创 2020-10-05 13:35:05 · 670 阅读 · 3 评论 -
Assigning to Classes(思维+中位数)
https://codeforces.com/contest/1300/problem/B 思路:观察样例可知总能构造使得差的最小为相邻的中间两个数字。比如按照sort从小到大后奇偶构造,分成两类。这样两者的中位数差最小。 #include<iostream> #include<vector> #include<queue> #include<cstring> #include<cmath> #include<map> #incl原创 2020-09-26 00:08:51 · 247 阅读 · 0 评论 -
yesky wine展销会(中位数)
Description 懒羊羊的酒吧生意越来越好,也大量采购了ACM届教练叶老师的yesky wine葡萄酒。为了让更多羊村的村民及亲戚朋友方便品尝,不出现某些摊位拥挤有些摊位空闲,所以懒羊羊决定对酒吧的摊位重新排列,使得它们能均匀分布。这些摊位是排在一条直线上的。他了解了所有摊位的坐标,希望移动一些摊位,使得每2个相邻的摊位距离正好是K米。当然懒羊羊希望总的移动米数最小。 Input 第一行输入2个整数n和k(1<=n,k<=10^6),n代表酒吧摊位,k是希望移动后的2个相邻摊位距离原创 2020-06-20 19:55:55 · 1032 阅读 · 2 评论