bzoj 1303 中位数

扫地机的CPU只要二十多块?2024第二拆来了 昨天还说到这个机器人的故障,经小鱼拆机后测试和后台网友留言确认,不是防跌落问题,是轮子故障,这个轮子不会动,轮子上有一个限位开关检测机器人是否离开地面的,测试的时候也没有误触发,所以电机存在故障,后面拆电机的时候再检查。最后再留下一个疑问,这个机器人的回充没有用红外管,机器人是如何识别基站进行返回充电的(因为只买了本体,没买充电桩,不确定充电桩的形状,是不是利用点云识别不确定)懂的请留言。全志的R16,封装是 BGA282,那这个板子至少是4层板,小鱼盲猜 6 层板,知道的小伙伴欢迎留言。 阅读详情

                                               bzoj 1303 中位数

传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1303

Description

给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。

Input

第一行为两个正整数n和b ,第二行为1~n 的排列。

Output

输出一个整数,即中位数为b的连续子序列个数。

Sample Input

7 4
5 7 2 4 3 1 6

Sample Output

4

HINT

第三个样例解释:{4}, {7,2,4}, {5,7,2,4,3}和{5,7,2,4,3,1,6}
N<=100000




明显卡暴力

所以用O(n)的方法

将小于b的标记为-1,大于b的标记为1,b本身标记为0



#include<cstdio>
#include<iostream>
using namespace std;
int num[100001],sum[100001],l[200001],r[200001];
int n,b,point,ans;
int main()
{
    scanf("%d%d",&n,&b);
    for(int i=1; i<=n; i++)
    {
        scanf("%d",&num[i]);
        if(num[i]>b)num[i]=1;
        else if(num[i]==b)
        {
            num[i]=0;
            point=i;
        }
        else num[i]=-1;
    }
    l[n]=1;
    r[n]=1;
    for(int i=point-1; i>=1; i--)
    {
        sum[i]=sum[i+1]+num[i];
        l[sum[i]+n]++;
    }
    for(int i=point+1; i<=n; i++)
    {
        sum[i]=sum[i-1]+num[i];
        r[sum[i]+n]++;
    }
    for(int i=0; i<=2*n-1; i++)ans+=l[i]*r[2*n-i];
    printf("%d",ans);
    return 0;
}


Hugging Face 最新开源 SmolVLA 小模型入门教程(一) 今天,我们介绍SmolVLA,这是一个紧凑型(450M)、开源的视觉-语言-动作模型,专为机器人设计,可在消费级硬件上运行。 仅在带有lerobot标签的开源社区共享数据集上进行预训练。 SmolVLA-450M在模拟环境(LIBERO、Meta-World)和真实世界任务(SO100、SO101)中,表现优于规模更大的VLA模型及强基线模型如ACT。 支持异步推理,响应速度提升30%,任务吞吐量提升2倍。 阅读详情

相关推荐

VMware ubuntu虚拟机(或Centos7)与主机共享文件夹

系统环境 Windows 10 Vmware Workstation 15 Pro Ubuntu 20.04.1 LTS centos7 1.Ubuntu配置共享文件 1.1安装VMware-tools 更新最新VMware-tools组件 编辑->首选项->更新->立即下载所有组件 安装VMware-tools 虚拟机->安装VMware-tools 安装后ubuntu会加载一个虚拟光驱,解压文件,在解压的文件目录下执行以下命令进行安装 sudo vmware-instal

weixin_38924500的博客 2160

BZOJ1303 中位数图

目录 BZOJ1303 中位数图 题解 code BZOJ1303 中位数图 题目传送门 题解 有点考验思维的一题。对于这个排列,我们实际上并不需要知道这个排列中每个数的值,实际上我们只需要知道这个数是否比\(b\)大就行了。所以我们先把所有的数都转化成1或者-1,表示这个...

dieyi9889的博客 189

深入解析线性反馈移位寄存器(LFSR)的工作原理与实现

本文深入解析了线性反馈移位寄存器(LFSR)的核心原理与实现方法。通过生动的比喻和详细的步骤拆解,阐述了LFSR如何通过反馈多项式和移位操作生成伪随机序列,并对比了斐波那契型与伽罗瓦型两种硬件结构。文章还涵盖了LFSR在数字电路测试、通信扰码及快速伪随机数生成等关键应用场景,同时指出了其在密码学中的局限性,并提供了Python和C语言的高效实现代码示例。

weixin_29007243的博客 543

BZOJ 1303: [CQOI2009]中位数图

BZOJ 1303: [CQOI2009]中位数图题目Time Limit: 1 Sec Memory Limit: 162 MBDescription给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。 Input第一行为两个正整数n和b ,第二行为1~n 的排列。 Output输出一个整数,即中位数为b的连续子序列个

faojie的博客 343

事件相机数据处理实战:从原始事件流到视觉表征的三种核心方法

本文深入探讨了事件相机数据处理的核心环节,即如何将异步、稀疏的原始事件流转换为深度学习模型可处理的视觉表征。文章重点解析了三种核心方法:逐通道累积、体素网格双线性插值和对称累积事件表示,详细阐述了其原理、代码实现、可视化效果及各自的适用场景,为事件相机在目标识别、光流估计等视觉任务中的高效应用提供了实战指南。

read5的博客 438

RT-DETR改进策略【卷积层】| CGblock 内容引导网络 利用不同层次信息,提高多类别分类能力 (含二次创新)

本文记录的是利用中的模块优化的目标检测网络模型。通过局部特征提取器、周围环境提取器、联合特征提取器和全局环境提取器来提取局部特征、周围环境和全局环境信息,充分利用不同层次的信息。本文将其应用到中,并进行二次创新,使网络能够更好的处理多类别目标的分类能力。CGNet: A Light-Weight Context Guided Network for Semantic Segmentation1️⃣ 首先通过局部特征提取器floc(∗)floc(*)floc(∗)和周围环境提取器fsur(∗)f_{sur }

Limiiiing的博客 1349

BZOJ1303: [CQOI2009]中位数图

【传送门:BZOJ1303】 简要题意:   给出一条n个数的序列,保证序列里的数为1~n,且互不相等,再给出一个数b,求出以b为中位数的长度为奇数的子序列个数 题解:   显然要你求以b为中位数的长度为奇数的子序列,其实就是求包含b的,以b为中位数的子序列,因为序列中的数互不相等,而且求的是奇数长度   那我们把序列中大于b的,改值为-1,小于b的,改值为1,等于b,就是b的位...

weixin_30642029的博客 74

〔重庆理工大学〕计算机网络实验指导书【实验九 直连路由,静态路由,默认路由配置】

本实验指导书介绍了直连路由、静态路由和默认路由的配置方法。主要内容包括:1)路由器基础知识,包括直连路由、静态路由和动态路由三种路由生成方式;2)路由度量值与匹配顺序,解释了不同路由类型的优先级;3)实验任务分为三个部分:直连路由的查看分析、静态路由的配置以及默认路由的配置,详细说明了配置步骤和命令。实验要求通过模拟器搭建网络环境,完成路由配置使PC间能够互通。实验旨在帮助学生掌握不同路由类型的工作原理和配置方法,适用于简单的网络环境。

Pretty Boy Fox的博客 1056

bzoj1303: [CQOI2009]中位数图

题面在这里 水题again做法: 我这做法好像有一点点辣鸡(?) emmmmm 我们首先将数组中小于bb的数都打标记11,然后记a[i]a[i]为前缀和。 设区间为(l,r](l, r]满足(r−l)(r-l)是奇数。 我们要求的区间即应满足2×(a[r]−a[l])+1=r−l2\times{(a[r]-a[l])}+1=r-l,且(l,r](l,r]经过bb所在位置。 转化一下,得

juruo? juruo! 321

碰撞检测 | 图解视线生成Bresenham算法(附ROS C++/Python/Matlab实现)

Bresenham视线生成是一种高效的算法,用于在二维网格上绘制直线。Bresenham算法可以应用在栅格地图中进行一维碰撞检测,即检查起点和终点间直线是否穿过障碍栅格。本文图解Bresenham碰撞检测的原理,并给出ROS C++/Python/Matlab三种实现加深理解

FRIGIDWINTER的博客 1万+

1、电路分析知识全解析:从基础到实践应用

本博客全面解析电路分析知识体系,涵盖从基础的电压、电流、电阻概念到复杂的交流电路、瞬态分析和高级应用如滤波器与变压器等内容。适合电子技术专业学生和技术爱好者学习,提供详细的知识结构、学习路径、实践示例以及丰富的学习资源,包括计算机模拟工具Multisim和PSpice的使用指导。通过理论与实践结合,帮助学习者掌握电路分析的核心技能,为电子工程和电力系统等相关领域打下坚实基础。

iii12的专栏 159

bzoj1303[CQOI2009]中位数图

bzoj1303[CQOI2009]中位数图 题意: 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。 题解: 首先将数组中所有小于b的数置为-1,等于的置为0,大于的置为1。然后对b及其右边的数的前缀和(b的位置到该位置所有数的和)出现个数建一个数组r,对b左边的数的每个后缀和(该位置到b的位置所有数的和)的相反数在r中的数相乘就是答案。实际上,这种把数转化成...

weixin_33922670的博客 74

【APM】在Kubernetes中,使用Helm安装Grafana 9.5.1

Grafana是一款流行的开源数据可视化和分析平台,它特别擅长处理时序数据,即随时间变化的数据,因此在监控系统性能、应用程序指标、物联网(IoT)设备数据等领域有着广泛的应用。

CN_Eden 1200

BZOJ1303 [CQOI2009]中位数图 其他

欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1303 题意概括   给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。 题解   我们找到b的位置,比如为pos。   然后往左,逐位统计比b小的,比b大的,差记为a。   对于左边所有的...

weixin_30293135的博客 100

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【题解】BZOJ 1303: [CQOI2009]中位数图

BZOJ 1303: [CQOI2009]中位数图 原题传送门 原题传送门 解题思路: 最初的想法是先把数据离散化, 把中位数标为0,比中位数大的标为1,比它小的标为-1。这样,问题就变成了,有多少个元素个数为奇数个且和为0的区间数。找到中位数所在的位置,两个for循环就好。 然后就兴冲冲地写好了代码,不出意外TLE,这才注意到,N<=100000。N^2的时间复杂度直接炸掉...

weixin_30474613的博客 153

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

【BZOJ1303】[CQOI2009]中位数图(模拟)

【BZOJ1303】[CQOI2009]中位数图(模拟) 题面 BZOJ 洛谷 题解 把大于\(b\)的数设为\(1\),小于\(b\)的数设为\(-1\)。显然询问就是有多少个横跨了\(b\)这个数所在的位置的区间的和恰好为\(0\)。那么拿个数组记一下左边,右边直接算就好了。 #include<iostream> #include<cstdio> using names...

weixin_30648963的博客 130

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

BZOJ1303(CQOI2009)[中位数图]--奇技淫巧

bzoj1303

Greninja的博客 771

[BZOJ1303][CQOI2009]中位数图

Solution   有点意思的思维题。   首先考虑到一个满足b是中位数的子序列中大于b和小于b的数字的个数一定是相等的。   设b在排列中的位置为p,可以对于每一个在p左边的位置i求出序列[i,p-1]中小于b的个数和大于b的个数,记为cnt1和cnt2;同理对于每一个在p右边的位置j求出序列[p+1,j]求出相应的cnt1和cnt2。   如果直接枚举i,j判断两者的cnt1和cnt...

weixin_30300523的博客 93

【Bzoj1303】中位数图

题意给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。解析因为数都是不重复的,所以可以把左边小于它的记为+1,大于的记为-1,统计前缀和f。同理,右边大于的记为1,小于的记为-1,统计前缀和g,那么,如果左边某个数出现某次数的方法种数等于右边的,就根据乘法原理统计答案,特别地,f[0]=g[0]=1。数组下标要做一点处理。#

没有听众的演讲 1086

bzoj 1303 |前缀和

bzoj 1303中位数图 Description 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。Input 第一行为两个正整数n和b ,第二行为1~n 的排列。Output 输出一个整数,即中位数为b的连续子序列个数。Sample Input 7 4 5 7 2 4 3 1 6Sample Output

远方 1367

bzoj 1303 中位数 题解

4.中位数 (median.pas/c/cpp) 【问题描述】 给出1~n的一个排列,统计该排列有多少个长度为奇数的连续子序列的中位数是b。中位数是指把所有元素从小到大排列后,位于中间的数。 【输入】 第一行为两个正整数n和b ,第二行为1~n 的排列。 【输出】 输出一个整数,即中位数为b的连续子序列个数。  【样例输入】 7 4 5 7 2 4 3 1 6  【样例输出】

Eirlys的博客 2382

【BZOJ 1303】 [CQOI2009]中位数图

思路题+模拟~

Regina8023 1537

[bzoj1303]中位数图

前缀和+差分 一段区间内的t数组和=0 <=> b为这一段区间的中位数 1 #include <iostream> 2 #include <algorithm> 3 #include <cstdio> 4 #include <cstring> 5 #include <cstdlib> ...

aoping9329的博客 124
上一篇: bzoj 1024 生日快乐 暴力搜索
下一篇: bzoj 2748 音量调节 背包
DJS_K_D
博客等级 码龄12年 2粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值