BZOJ 1303: [CQOI2009]中位数图(思路题)
解题思路
比较好想的思路题。首先肯定要把原序列转化一下,大于\(k\)的变成\(1\),小于\(k\)的变成\(-1\),然后求一个前缀和,还要用\(cnt[]\)记录一下前缀和每个数出现了几次,然后统计答案的时候从\(1\)循环到\(k\),每次转化为前缀和相减即可。
代码
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int MAXN = 100005;
typedef long long LL;
inline int rd(){
int x=0,f=1;char ch=getchar();
while(!isdigit(ch)) {f=ch=='-'?0:1,ch=getchar();}
while(isdigit(ch)) {x=(x<<1)+(x<<3)+ch-'0';ch=getchar();}
return f?x:-x;
}
int n,m,a[MAXN],p;
int cnt[MAXN<<1],tag;
LL ans;
int main(){
n=rd(),m=rd();
for(int i=1;i<=n;i++){
a[i]=rd();
if(a[i]>m) a[i]=1;
else if(a[i]==m) a[i]=0,p=i;
else a[i]=-1;
a[i]+=a[i-1];
if(p) cnt[a[i]+100000]++;
}
ans+=cnt[100000];
for(int i=1;i<p;i++) ans+=cnt[a[i]+100000];
printf("%lld\n",ans);
return 0;
}
BZOJ 1303: [CQOI2009]中位数图(思路题)的更多相关文章
- BZOJ 1303 CQOI2009 中位数图 水题
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 2340 Solved: 1464[Submit][Statu ...
- BZOJ 1303: [CQOI2009]中位数图【前缀和】
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 2737 Solved: 1698[Submit][Statu ...
- bzoj 1303: [CQOI2009]中位数图 数学
1303: [CQOI2009]中位数图 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/ ...
- [BZOJ 1303] [CQOI2009] 中位数图 【0.0】
题目链接:BZOJ - 1303 题目分析 首先,找到 b 的位置 Pos, 然后将数列中小于 b 的值赋为 -1 ,大于 b 的值赋为 1 . 从 b 向左扩展,不断算 Sum[i, b - 1] ...
- BZOJ 1303: [CQOI2009]中位数图 【水题】
给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b.中位数是指把所有元素从小到大排列后,位于中间的数. Input 第一行为两个正整数n和b ,第二行为1~n 的排列. Out ...
- BZOJ 1303: [CQOI2009]中位数图 问题转化_扫描_思维
将比 b 大的设成 1,比 b 小的设成 -1,开个桶左右扫描一下,乘法原理乘一乘就好了. 虽然一眼切,不过这个基于中位数的转化还是相当重要的.middle 那个主席树的题也需要该做法 Code: # ...
- bzoj 1303: [CQOI2009]中位数图
题目链接 给n个数,一个值b, 统计所有以b为中位数的序列的个数.序列长度为奇数.数字在1-n之间, 每个数只出现一次. 如果一个数大于b, 那么将他赋值为1, 小于b赋值为-1, 记录数组中b出现的 ...
- 【BZOJ】1303: [CQOI2009]中位数图(特殊的技巧)
http://www.lydsy.com/JudgeOnline/problem.php?id=1303 依旧是题解流,,,不看题解没法活,,,第一眼就是瞎搞,然后就是暴力,显然TLE..题解啊题解. ...
- 1303: [CQOI2009]中位数图
早起一AC,整天萌萌哒. Problem: 1303 User: forgot93 Language: C++ Result: Accepted Time:56 ms Memory:2108 kb * ...
随机推荐
- hdu 6092 Rikka with Subset (集合计数,01背包)
Problem Description As we know, Rikka is poor at math. Yuta is worrying about this situation, so he ...
- LOJ 2554 「CTSC2018」青蕈领主——结论(思路)+分治FFT
题目:https://loj.ac/problem/2554 一个“连续”的区间必然是一个排列.所有 r 不同的.len 最长的“连续”区间只有包含.相离,不会相交,不然整个是一个“连续”区间. 只有 ...
- dubbo-monitor安装
dubbo-monitor安装 cd /opt/tools/ #包目录 tar -C /opt/ -xf dubbo-monitor-simple--assembly.tar.gz cd dubbo- ...
- loj2009. 「SCOI2015」小凸玩密室
「SCOI2015」小凸玩密室 小凸和小方相约玩密室逃脱,这个密室是一棵有 $ n $ 个节点的完全二叉树,每个节点有一个灯泡.点亮所有灯泡即可逃出密室.每个灯泡有个权值 $ A_i $,每条边也有个 ...
- UML的类型
分类 UML从考虑系统的不同角度出发,定义了用例图.类图.对象图.包图.状态图.活动图.序列图.协作图.构件图.部署图等10种图. 常见的UML图有用例图(Use Case Diagram).类图(C ...
- 声明式语法重写基于容器CICD构建流水线
调试了一下午,一句话都不想说了,看代码. ----- 参考文档 https://blog.csdn.net/weixin_42010394/article/details/90670945 实践代码 ...
- 如何理解 HTML 语义化?
先看下面两段代码 <div>标题</div> <div> <div>一段文字</div> <div> <div>列表 ...
- 购买 Linux VPS 服务器后简单的安全设置
我们在购买了 Linux 系统的 VPS 或服务器后,一般的商家都会给你一个 root 权限的账号,并且默认的密码不会太长,这是很不安全的.经常有客户因为弱口令而被黑客暴力破解密码导致 VPS 服务器 ...
- Windows下搭建Wampserver+Wordpress
安装wordpress windows 下载安装包 百度云 提取码:qxzp 安装wamp WampServer就是Windows Apache Mysql PHP集成安装环境,即在window下的a ...
- 常用Javascript方法
一,检测是否是Array 1,通过constructor检测 function isArray(value){ return value && typeof value === 'ob ...