CF1918B Minimize Inversions 题解
诈骗题,点破一文不值。
交换元素 时可能有以下四种情况:
情况一:,此时总逆序对数加 。
情况二:,此时总逆序对数不变。
情况三:,此时总逆序对数不变。
情况四:,此时总逆序对数减 。
分析上面四种情况,发现只要 时交换就是不劣的,那么我们只用把每个元素按照 从小到大来排序即可。
#include <bits/stdc++.h>
using namespace std;
struct val
{
long long a,b;
}a[300000];
long long t,n;
bool cmp(struct val a,struct val b)
{
return a.a<b.a;
}
int main()
{
scanf("%lld",&t);
while(t--)
{
scanf("%lld",&n);
for(int i=1;i<=n;i++)scanf("%lld",&a[i].a);
for(int i=1;i<=n;i++)scanf("%lld",&a[i].b);
sort(a+1,a+n+1,cmp);
for(int i=1;i<=n;i++)printf("%lld ",a[i].a);
printf("\n");
for(int i=1;i<=n;i++)printf("%lld ",a[i].b);
printf("\n");
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探