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

Luogu P1966

题意简化

给定两个数组 \(a,b\),求让 \(\sum{(a_i-b_i)^2}\) 尽可能小所需要的最小交换次数

分析

首先,拆解题目给出的公式(完全平方)

\(\sum{(a_i-b_i)^2}=\sum {{a_i}^2+{b_i}^2-2a_ib_i}\)

可以发现,\(\sum{{a_i}^2+{b_i}^2}\) 是不会变的,那我们只能从 \(\sum 2a_ib_i\) 入手,让它尽可能大,答案就会尽可能小

那么易得,只要让大数和大数相乘,小数和小数相乘,\(a_i b_i\) 就会最大

所以只要将 \(a,b\) 排序就能得到最终序列

问题是我们求的是交换次数

那我们分析一下,其实要求的就是逆序对数量

使用树状数组即可

http://www.jsqmd.com/news/8366/

相关文章:

  • 计算机毕业设计springboot和Vue的在线购物系统 基于SpringBoot与Vue.js的电子商务平台开发 利用SpringBoot和Vue构建的网络购物应用 - 教程
  • 题解:P14036 [PAIO 2025] Rooks
  • 2025/8/26
  • 数据结构 - 跳表 Skip List
  • 06. 定时器
  • 硬件-电容学习DAY23——电容设计实战指南:从选型到高频应用 - 教程
  • NOIP之前的复健记录
  • Linux 命令行安装达梦数据库
  • Google开源Tunix:JAX生态的LLM微调方案来了
  • 实用指南:如何优化 C# MVC 应用程序的性能
  • Eclipse 中文语言包安装教程:一键将界面切换为中文 - 教程
  • 『OI 回忆录』停课有感
  • 『回忆录』初三第三学月
  • 完整教程:MySQL 5.7 主主复制 + Keepalived 高可用配置实例
  • 题解:P14074 [GESP202509 五级] 有趣的数字和
  • 完整教程:数据结构从入门到实战————栈
  • 解码Huffman 编码与 Huffman 树
  • 『回忆录』初三来高中的半学期
  • 10.1 容器云部署准备(一) - 实践
  • 关于缓冲区以及输出方式
  • 详细介绍:2025三掌柜赠书活动第三十五期 AI辅助React Web应用开发实践:基于React 19和GitHub Copilot
  • coduck模拟赛一 补题报告 - 指南
  • RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems
  • HDF5文件 ——之三
  • MySQL库的操作(ubuntu) - 教程
  • 代码随想录算法训练营|Day 25
  • 深入解析:SAE J3072-2024插电式电动汽车(PEV)中的车载逆变器系统安全标准介绍
  • 冷僻模板整理
  • 深入解析:精读C++20设计模式——行为型设计模式:命令模式
  • C# 与 C/C++ 互操作