[BZOJ 1303] CQOI 2009 中位数图 · 数学
来源:互联网 发布:传智48期php就业班 编辑:程序博客网 时间:2024/05/29 09:15
一个大于b的数和一个小于b的数可以互相抵消,所以我们用1和-1表示。
从b向两边扩展,left[i]表示b左边抵消后有i个数比b小的可能数,right[i]表示b右边抵消后有i个数比b大的可能数。
乘法原理得ans=sigma(left[i]*right[i]).
#include <stdio.h>#include <algorithm>#include <string.h>#include <iostream>using namespace std;const int N=100005;int n,m,ad,data[N*2],r[N*2],l[N*2],sum,ans;int main(){cin>>n>>m;for (int i=1;i<=n;i++){cin>>data[i];if (data[i]==m) ad=i;}sum=0;l[N]=r[N]=1;for (int i=ad-1;i;i--)sum+=(data[i]<m)?1:-1,l[sum+N]++;sum=0;for (int i=ad+1;i<=n;i++)sum+=(data[i]>m)?1:-1,r[sum+N]++;for (int i=N-n;i<=N+n;i++) ans+=r[i]*l[i];cout<<ans<<endl;return 0;}
0 0
- [BZOJ 1303] CQOI 2009 中位数图 · 数学
- BZOJ 1303 CQOI 2009 中位数图 模拟
- 【CQOI 2009】 中位数图
- BZOJ-1303 中位数图 数学+乱搞
- 【CQOI 2009】 中位数
- BZOJ 3505 CQOI 2014 数三角形 数学
- [BZOJ 1045] HAOI 2008 糖果传递 & [BZOJ 3293] CQOI 2011 分金币 · 数学
- BZOJ 1303-中位数图(中位数技巧)
- bzoj 1045 中位数+数学推导
- 【BZOJ 1303】 [CQOI2009]中位数图
- bzoj 1303 [CQOI2009]中位数图
- BZOJ 1303 [CQOI2009]中位数图
- 【BZOJ 1303】 【CQOI2009】中位数图
- BZOJ 1303: [CQOI2009]中位数图
- bzoj 1303: [CQOI2009]中位数图
- BZOJ 1303 [CQOI2009]中位数图
- BZOJ 1303 - [CQOI2009]中位数图 (技巧)
- 【BZOJ】1303 [CQOI2009]中位数图 建模
- windows8 下安装 Hyper-V
- 浅谈HTTP中Get与Post的区别
- DDR 内存子系统常见硬件错误记及软件诊断算法
- 0619关于外网的问题整理一下
- iOS开发系列--地图与定位
- [BZOJ 1303] CQOI 2009 中位数图 · 数学
- Android Project Butter分析
- Linux 下yum安装php
- iOS 获取屏幕分辨率 以及放大模式、高清模式区别
- servlet介绍
- hdu3530 Subsequence 单调队列
- HttpClient ip直连域名问题那些事
- vim
- 为MultipeerConnectivity蓝牙连接写的demo