bzoj 1303: [CQOI2009]中位数图
1303: [CQOI2009]中位数图
Time Limit: 1 Sec Memory Limit: 162 MB
Submit: 2747 Solved: 1704
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
Sample Output
这题非常单纯,长度必须为奇数,而且必须是1-n的排列,那么问题就很简单了
统计前缀和,sum[i]==k表示前i个数里大于d的数与小于d的数差为k
还没遍历到d之前,更新flag[k],flag[k]==m表示总共有m个前缀和sum[]==k,
(因为k的范围是[-n, n],数组下标不能为负,所以可以整体+n)
遍历到d之后,对于当前sum[i],所有以第i个元素为结尾中位数为d的连续子序列个数就为flag[sum[i]]!
最后答案就是∑flag[sum[i]] (d所在位置<=i<=n)
#include<stdio.h>
#include<string.h>
int a[100005], sum[100005], flag[200010];
int main(void)
{int n, d, i, ans, ok;while(scanf("%d%d", &n, &d)!=EOF){ans = ok = 0;memset(flag, 0, sizeof(flag));flag[n] = 1;for(i=1;i<=n;i++){scanf("%d", &a[i]);if(a[i]>d) sum[i] = sum[i-1]+1;if(a[i]==d) sum[i] = sum[i-1], ok = 1;if(a[i]<d) sum[i] = sum[i-1]-1;if(ok==1) ans += flag[sum[i]+n];if(ok==0) flag[sum[i]+n]++;}printf("%d\n", ans);}return 0;
}
bzoj 1303: [CQOI2009]中位数图相关推荐
- BZOJ 1303: [CQOI2009]中位数图【前缀和】
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 2737 Solved: 1698 [Submit][Sta ...
- bzoj1303[CQOI2009]中位数图
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 1969 Solved: 1264 [Submit][Sta ...
- [CQOI2009]中位数图
[CQOI2009]中位数图 这是一道OI真题,我们来看看题目: 顺便放下地址吧:[CQOI2009]中位数图 读了题目之后发现直接枚举是不行的,会超时,那么我们就得换种思路了,我们可以把大于目标数的 ...
- [CQOI2009]中位数图 详细题解
题目链接: https://ac.nowcoder.com/acm/problem/19913 题目描述: 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b.中位数是指把所有 ...
- 牛客网【每日一题】5月22日 [CQOI2009]中位数图
链接: 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 给出1~n的一个排列,统计该排列有 ...
- [bzoj1303][CQOI2009]中位数图
来自FallDream的博客,未经允许,请勿转载,谢谢. 给定一个n个数排列,求有多少段长度为奇数的区间,中位数是b. n<=100000 时间限制0.1s 我一开始没看到排列,想着怎么还能O( ...
- 【CQOI2009】中位数图
Powered by:NEFU AB-IN [CQOI2009]中位数图 题意 给出 1 − n 1-n 1−n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是 b b b. 中位数是指 ...
- [CQOI2009] 中位数 (前缀和)
[CQOI2009] 中位数 题目描述 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b.中位数是指把所有元素从小到大排列后,位于中间的数. 输入输出格式 输入格式: 第一行 ...
- BZOJ 1305 [CQOI2009]dance跳舞
这是一道最大流的模版题 一定要记住不能开出来重点呀 #include <queue> #include <cstdio> #include <cstring> #i ...
最新文章
- Java基础班学习笔记(8)
- 揭秘人工智能背后鲜为人知的人工力量——数据标注
- composer php 使用方法,Composer的基本使用方法
- 面试中遇到这 3 个SQL问题,最容易掉坑里!
- 信号的采样与恢复matlab实验报告,实验七 连续信号的采样与恢复
- 常见Linux版本概览
- 运维讨厌流浪地球的原因
- 面试系列(三):Java反射机制
- 易智瑞大赛——地图故事组参赛经验
- java并发编程简单分析
- 解决苹果手机连接了wifi,依旧无法更新系统的问题
- 如何把照片kb缩小?详细步骤
- HC-SR04超声波模块测距原理与原理图
- 魔兽,星际,红警,完全对比表
- python 排名函数_分数排名(Python),成绩,排序,python
- python-正负数交叉排序
- 基于自定义gym环境的强化学习
- 留学生日常英语46~50
- Chrome浏览器全球大翻车? 让20多亿用户无网可上
- 整理UI设计的三个分类,入门前要清楚!