bzoj3289: Mato的文件管理

打造会自主学习的 AI 助手:OpenClaw 记忆系统完全指南 这不是科幻,这是我正在使用的系统。我的 AI 助手「小琳」已经运行了一段时间,积累了大量的知识和经验,而且还在不断学习成长。心跳(Heartbeat)是 OpenClaw 的定时轮询机制,可以让 AI 主动做一些事情。你有没有遇到过这样的困扰:每次和 AI 对话,它都像失忆了一样,之前聊过的内容完全不记得?设置定时任务:每天早上 8 点,查询天气和热点新闻,通过钉钉推送给我。让你的 AI 助手拥有持久记忆,能够自主学习、总结经验、不断成长。这不仅仅是一个「能记住事情的 AI」,而是一个。 阅读详情

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

思路:比较裸的莫队。

交换次数显然是逆序对个数...

然后考虑怎么从[l,r]的逆序对个数得到[l,r+1]的逆序对个数。

先离散化,用树状数组维护权值,我们只要考虑对于新加进来的这个数,原区间中有多少个数大于它,拿区间长度去减就可以得到这个数的贡献。

删除一个数类似。

复杂度O(n^1.5*logn)

#include<cmath>
#include<cstdio>
#include<cstring>
#include<algorithm>
const int maxn=50010;
using namespace std;
struct data{int id,rank;}file[maxn];
struct que{int l,r,id;}q[maxn];
int n,m,sz,a[maxn],bel[maxn],ans[maxn],cnt,res,T[maxn];
bool cmp(data a,data b){return a.rank<b.rank;}
bool cmp2(que a,que b){return bel[a.l]==bel[b.l]?a.r<b.r:bel[a.l]<bel[b.l];}
void modify(int x,int add){for (;x<=n;x+=x&(-x)) T[x]+=add;}
int query(int x){int res=0;for (;x;x-=x&(-x)) res+=T[x];return res;}

void work(){
	for (int i=1,l=1,r=0;i<=m;i++){
		for (;r<q[i].r;r++) res+=(r-l+1-query(a[r+1])),modify(a[r+1],1);
		for (;r>q[i].r;r--) res-=(r-l+1-query(a[r])),modify(a[r],-1);
		for (;l<q[i].l;l++) res-=query(a[l]-1),modify(a[l],-1);
		for (;l>q[i].l;l--) res+=query(a[l-1]-1),modify(a[l-1],1);
		ans[q[i].id]=res;
	}
	for (int i=1;i<=m;i++) printf("%d\n",ans[i]);
}

int main(){
	scanf("%d",&n);sz=sqrt(n);
	for (int i=1;i<=n;i++) bel[i]=(i-1)/sz+1;
	for (int i=1;i<=n;i++) scanf("%d",&file[i].rank),file[i].id=i;
	sort(file+1,file+1+n,cmp);
	for (int i=1;i<=n;i++){if (file[i].rank!=file[i-1].rank) ++cnt;a[file[i].id]=cnt;}
	scanf("%d",&m);
	for (int i=1;i<=m;i++) scanf("%d%d",&q[i].l,&q[i].r),q[i].id=i;
	sort(q+1,q+1+m,cmp2),work();
	return 0;
}


使用LabVIEW创建和分析柱状图:从基础绘制到高级数据分析的完整指南 LabVIEW,全称为Laboratory Virtual Instrument Engineering Workbench,是由美国国家仪器公司(National Instruments, NI)开发的一款图形化编程语言。自1986年首次推出以来,LabVIEW凭借其强大的数据采集、分析和控制能力,在工程、科研、教育等领域得到了广泛应用。与传统的文本编程语言不同,LabVIEW采用了图形化编程方式,用户通过连接不同的函数节点来实现复杂的逻辑和算法。 阅读详情

相关推荐

【QMIX】一种基于Value-Based多智能体算法

文章目录1. QMIX 解决了什么问题(Motivation)2. QMIX 怎样解决团队收益最大化问题(Method)2.1 算法大框架 —— 基于 AC 框架的 CTDE(Centralized Training Distributed Execution) 模式 QMIX 是一种基于 Value-Based 的多智能体强化学习算法(MARL),其基本思想来源于 Actor-Critic 与 DQN 的结合。使用中心式学习(Centralized Learning)分布式执行(Distributed

qq_38638132的博客 9861

BZOJ3289

题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3289 题意:求区间逆序对。 题解:莫队,然后树状数组求逆序对。 注意:要离散化。 比如l,r这段区间增加前面增加一个数a[l-1], 只用考虑l,r这段区间里比 a[l-1]-1 小的数,记为cnt, 答案减去cnt,然后更新下. 比如l,r这段区间后面加一个数a[r+1],

qq_36876305的博客 341

接地设计的本质:按电流类型选择物理连接方式

接地是电子系统中实现电位参考、噪声抑制与安全保护的基础技术,其核心原理在于为不同性质的电流提供可控的低阻抗返回路径。从直流到GHz频段,电流的频率特性、能量等级和持续时间决定了接地的物理实现方式——工频安全电流依赖低电阻导体,高频噪声需低感平面或磁珠衰减,ESD脉冲要求受控泄放电阻,浪涌能量则必须通过独立短路径导入大地。这种‘目的决定方式’的设计逻辑,直接关联EMC合规性、信号完整性与系统可靠性。本文聚焦PCB级与设备级工程实践,详解安全地、功能地、浪涌地与静电地的判据差异及六种典型连接策略,帮助硬件工程师

weixin_36369848的博客 260

『莫队·树状数组』Mato的文件管理

题解 对于区间询问,我们可以想到莫队,而逆序对则需要用树状数组来维护。 因此我们便可以动态维护区间的逆序对。例如: 删除左边的点,要在删去树状数组中比它小的点。加如左边的点,则加入树状数组中比它小的点。 删除右边的点,就删除比它大的点,因为右边的点点往往处于逆序对中的较小者,而左边则属于较大者。 然后用莫队和树状数组维护即可。 代码如下: #include <bits/stdc++.h...

Ronaldo7_ZYB的博客 274

全球AI算力最强公司分析报告

全球AI算力最强公司分析报告显示,Google凭借自研TPU技术和庞大数据中心网络位居榜首,拥有约100万至150万块等效H100 GPU算力。微软、Meta和亚马逊紧随其后,分别拥有75万、55万和25万块等效H100 GPU。中国企业中,百度、阿里巴巴和腾讯表现突出,华为在国产AI芯片领域领先。技术指标上,NVIDIA H100相比A100性能显著提升,但功耗也大幅增加。未来AI算力需求将持续激增,预计2028年全球市场将超2000亿美元。新兴挑战者如xAI可能改变竞争格局。

MyySophia的博客 5717

智慧楼宇解决方案-全套大合集

智慧楼宇解决方案,楼宇能耗-环境-设备统一管控解决方案。

byte58的博客 2592

Mato的文件管理

DescriptionMato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料。Mato有一个习惯,他总是从文件大小从小到大看资料。他先把要看的文件按编号顺序依次拷贝出来,再用他写的排序程序给文件大小排序

Facico的博客 1600

手把手教你用fusb302实现PD快充:从驱动移植到实战调试(附源码)

本文详细解析了基于FUSB302芯片实现USB PD快充的完整开发流程。内容涵盖芯片选型、硬件设计要点、Linux驱动移植与内核集成,并重点剖析了PD协议交互中的关键调试技巧,如“死亡15ms”时序问题与中断模式选择。文章通过实战经验,帮助嵌入式开发者高效完成从驱动移植到系统集成的全链路开发,并附有源码参考。

sky77的博客 377

bzoj3289 树状数组+莫队

树状数组 莫队

五彩蒟蒻DDD的博客 625

Conda换源全攻略:从清华源到默认源的保姆级切换教程(附常见问题解决)

本文提供Conda换源的完整教程,详细讲解如何从清华源切换到默认源,包括配置步骤、常见问题解决方案及高级技巧。针对国内开发者遇到的下载速度慢问题,清华源提供了高速稳定的解决方案,同时文章也介绍了恢复默认源的方法和多种镜像源选择。

weixin_28837817的博客 940

ESP32 智能垃圾分类助手:从硬件搭建到代码实现的硬核指南

基于 ESP32 的智能垃圾分类设备,充分利用了 ESP32 的外设兼容性和处理能力,通过简单的模块组合和代码编写,就能实现垃圾分类的智能化。无论是作为学生的物联网课程设计,还是家庭的环保小工具,这个项目都兼具实用性和趣味性。如果你想进一步优化功能,还可以尝试加入更多传感器(如红外传感器检测垃圾满溢),让设备更加智能。

weixin_42300449的博客 930

【BZOJ 3289】 Mato的文件管理

【BZOJ 3289】 Mato的文件管理 莫队算法~

Regina8023 1222

OceanSim: 基于Isaac Sim GPU 加速水下机器人感知仿真框架

OceanSim 采用先进的基于物理的渲染技术,对水下视觉和声学传感器进行精确建模。与其他模拟引擎相比,OceanSim 的渲染速度要快得多。作为 NVIDIA Issac Sim 的扩展,OceanSim 采用了多功能设计。通过融入快速发展的 NVIDIA Omniverse 生态系统,我们的模拟器自然而然地在机器人学习和水下机器人技术之间架起了一座桥梁,从而促进了水下应用中体现型人工智能技术的开发和部署。OceanSim 将以开放源码的方式提供,使研究界能够以合作的模式作出贡献。

机器人控制与仿真应用 2053

BZOJ_3289_Mato的文件管理_莫队+树状数组

BZOJ_3289_Mato的文件管理_莫队+树状数组 Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号 。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。Mato每天随机选一个区间[l,r ],他今天就看编号在此区间内的这些资料。Mato有一个习惯,他总是从文件大...

185

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

BZOJ3289: Mato的文件管理

BZOJ3289: Mato的文件管理 Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。 为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。 Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料。 Mato有一个习惯,他总是从文件大小从小到大看资料。 他先...

weixin_30845171的博客 120

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

bzoj3289Mato的文件管理

bzoj3289Mato的文件管理 题意: 一共有n份资料,每天随机选一个区间[l,r],Mato按文件从小到大的顺序看编号在此区间内的这些资料。他先把要看的文件按编号顺序依次拷贝出来,再用排序程序给文件大小排序。求每天排序时的交换次数。 题解: 还是莫队,但是转移的时候用树状数组维护逆序对个数,总复杂度为O(nsqrt(n)log2n)。因为是从大到小插入的,所以维护时要用r-...

anheku1562的博客 122

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

bzoj3289 Mato的文件管理

莫队算法+树状数组

AaronPolaris 4308

BZOJ 3289 Mato的文件管理 | 莫队 树状数组

BZOJ 3289 Mato的文件管理 题意 求区间逆序对。 题解 在莫队的基础上使用树状数组求逆序对。 在当前区间左侧加入一个数时,res += 原区间比它小的数的个数; 在当前区间右侧加入一个数时,res += 原区间比它大的数的个数; 在当前区间左侧删除一个数时,res -= 原区间比它小的数的个数; 在当前区间右侧删除一个数时,res -= 原区间比它大的数的个数; #include &l...

weixin_30780221的博客 116

【BZOJ3289】【莫队分块+树状数组求逆序对】Mato的文件管理

3289: Mato的文件管理 Time Limit: 40 Sec  Memory Limit: 128 MB Submit: 1123  Solved: 495 [Submit][Status][Discuss] Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的

snowy_smile的博客 754

BZOJ3289Mato的文件管理

3289: Mato的文件管理 Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料。Mato有一个习惯,他总是从文件大小从小到大看资料。他先把要看的文件按...

dolphin198455的博客 120

[bzoj 3289] Mato的文件管理

[bzoj 3289] Mato的文件管理 Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止他人偷拷,这些资料都是加密过的,只能用Mato自己写的程序才能访问。Mato每天随机选一个区间[l,r],他今天就看编号在此区间内的这些资料。Mato有一个习惯,他总是从文件大小从小到大看资料。他先把要看的文...

diezhe3537的博客 151

bzoj 3289 - Mato的文件管理

3289: Mato的文件管理 Time Limit: 40 Sec Memory Limit: 128 MB Submit: 5104 Solved: 2131 [Submit][Status][Discuss] Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号 。为了防止他人偷拷,这些资料都是加密过的,只能用M...

青烟绕指柔的博客 407

BZOJ 3289 Mato的文件管理(莫队+离散化求逆序数)

3289: Mato的文件管理 Time Limit:40 SecMemory Limit:128 MB Submit:2171Solved:891 [Submit][Status][Discuss] Description Mato同学从各路神犇以各种方式(你们懂的)收集了许多资料,这些资料一共有n份,每份有一个大小和一个编号。为了防止...

weixin_30472035的博客 98

bzoj 3289: Mato的文件管理

树状数组+莫队

我要吃熊猫 498

bzoj-3289-Mato的文件管理(莫队+树状数组)

题目链接:bzoj-3289-Mato的文件管理最大交换次数应该是区间的逆序对数,每次交换消除一个逆序对(不会证明)。 求逆序对可以用树状数组来实现。每次转移是 O(logn)O(logn) 的。 因此总复杂度是 O(n√logn)的O(\sqrt{n}logn)的 。#include<bits/stdc++.h> using namespace std; typedef long long l

On the way 763

[bzoj3289]Mato的文件管理

题目大意给定一个序列,每次询问一个区间,你可以交换相邻两个元素,这个区间你最少需要多少次交换才能使其有序。分块大法好我们观察,每次交换如果交换a[i]和a[i+1],那么显然a[i]>a[i+1],交换后逆序对个数减一。当序列逆序对个数为0时序列就有序。那么显然题意就是询问区间逆序对个数。我们可以用莫队算法来做。因为它符合类似+1-1的性质。#include<cstdio> #include<alg

不来也不去的一只失忆蝴蝶 896
上一篇: bzoj3052: [wc2013]糖果公园
下一篇: bzoj3809: Gty的二逼妹子序列
thy_asdf
博客等级 码龄12年 16粉丝 186原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值