当前位置: 首页 > news >正文

洛谷 - P5094 [USACO04OPEN] MooFest G 加强版 题解

P5094 [USACO04OPEN] MooFest G 加强版

tags:【普及+/提高】 【树状数组】【cdq 分治】

题目让求:

\[\sum_{1 \le j < i \le n} \max(v_i,v_j) \times |x_i - x_j| \]

\(v\) 排序,即:

\[\sum_{1 \le j < i \le n} v_i \times |x_i - x_j| \]

考虑处理绝对值,把绝对值拆开:

\[\sum_{1 \le j < i \le n} v_i \times (x_i - x_j) = \sum_{1 \le j < i \le n} v_i \times x_i - v_i \times x_j = \sum_{1 \le i \le n} v_i \times x_i - \sum_{1 \le j < i \le n} v_i \times x_j \times [x_j < x_i] \]

绝对值内是负数的拆分同理,上面是非负数的拆分。

因此,我们只需要维护两个树状数组(BIT),分别维护前 \(i\) 个中 \(x_j\) 不超过 \(x_i\) 的个数,以及 \(x_j\) 不超过 \(x_i\) 的权值和即可。

时间复杂度 \(O(n \log n)\)

#include <bits/stdc++.h>
using namespace std;
const int N = 50005;
const int V = 50000;
int n,cnt[N];
long long tot,ans,sum[N];
struct node
{int v,x;
}a[N];
void insert(int x,int d)
{while (x <= V){cnt[x]++;sum[x] += d;x += (x & (-x));}
}
int query_cnt(int x)
{int res = 0;while (x){res += cnt[x];x -= (x & (-x));}return res;
}
long long query_sum(int x)
{long long res = 0;while (x){res += sum[x];x -= (x & (-x));}return res;
}
bool cmp(node a,node b)
{return a.v < b.v;
}
int main()
{scanf("%d",&n);for (int i=1;i<=n;i++){scanf("%d",&a[i].v);scanf("%d",&a[i].x);}sort(a+1,a+n+1,cmp);for (int i=1;i<=n;i++){insert(a[i].x,a[i].x), tot += a[i].x;int num = query_cnt(a[i].x);ans += 1ll * a[i].v * (1ll * a[i].x * num - query_sum(a[i].x));ans += 1ll * a[i].v * ((tot - query_sum(a[i].x)) - 1ll * a[i].x * (i-num));}printf("%lld",ans);return 0;
}
http://www.jsqmd.com/news/379111/

相关文章:

  • 医疗设备产品设计如何创新?2026三大趋势解析+设计策略指南 - 匠言榜单
  • 逆向工程视角:揭秘 TikTok 视频去水印解析的底层逻辑与实现
  • 2026国内最新喷胶企业top5推荐!服务深度覆盖江苏、山东、济南等地,优质喷胶品牌权威榜单发布,多场景适配助力高效粘接 - 品牌推荐2026
  • AI专著撰写不用愁,热门工具解析帮你轻松搞定学术大作
  • 基于深度学习YOLOv12的裂缝识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 轻量高效!TikTok无水印视频下载工具实战,附服务端解析思路与代码
  • 掌握AI专著写作诀窍,使用工具轻松搞定长篇学术专著
  • 基于深度学习YOLOv11的裂缝识别检测系统(YOLOv11+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • Ubuntu 22.04 安装 K8S 1.28.2版本
  • 小容量32单片机也上bootloader?拆机烧录的苦谁懂,能上抓紧上
  • 用AI专著写作工具就对了!流程全解析,轻松搞定百万字巨著
  • WPS数据写入Word模版文档,批量生成文档 - 实践
  • 掌握AI专著撰写技巧,搭配优质工具,轻松打造专业学术专著
  • 基于深度学习YOLOv12的杂草检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 基于深度学习YOLOv12的学生课堂行为识别检测系统(YOLOv12+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • AI写专著高效攻略:工具测评与应用,快速完成学术专著任务
  • 基于深度学习YOLOv11的学生课堂行为检测系统(YOLOv11+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • 基于深度学习YOLOv11的安全帽检测系统(YOLOv11+YOLO数据集+UI界面+登录注册界面+Python项目源码+模型)
  • Docker开启tcp监听
  • 2026国内最新门窗胶源头厂家top5推荐!服务深度覆盖江苏、山东、济南等地,优质门窗胶品牌权威榜单发布,合规环保助力高品质建材应用 - 品牌推荐2026
  • 第11天:内容创作——高效产出优质内容
  • 2026国内最新最新门窗胶源头厂家top5推荐!服务深度覆盖江苏、山东、济南等地,优质门窗胶品牌权威榜单发布,合规环保助力高品质建材应用 - 品牌推荐2026
  • 7步实战路线图,小白也能学会大模型,收藏这份未来指南!
  • TikTok视频下载的架构演进:从WPF客户端到Blazor Server的跨平台实践
  • 详细介绍:【文献分享】LyMOI一种结合深度学习和大规模语言模型的用于解读组学数据的工作流程
  • 2026国内最新光伏胶品牌推荐!服务深度覆盖江苏、山东、济南、云南等地,优质光伏胶厂商权威榜单发布,专业品质助力光伏项目高效运行 - 品牌推荐2026
  • 基于Python的在线选课系统[python]-计算机毕业设计源码+LW文档
  • 电池组散热分析:利用ANSYS Fluent流体动力学模拟研究电池组散热性能与优化设计
  • 2026国内最新光伏胶品牌top5推荐!服务深度覆盖江苏、山东、济南、云南等地,优质光伏胶厂商权威榜单发布,专业品质助力光伏项目高效运行 - 品牌推荐2026
  • 股市基础知识