CF1573B题解
题意:
对于给定的序列
思路:
可以快速推断出:对于
由于给定的序列为奇偶顺序排列,故我们可以将 1=1,2=3,3=5,…,n=2*n-1
以及 1=2,2=4,…,n=2*n
。
而数组的读入则为:下标存值,元素内容存位置。
则:对于任意的
附AC代码
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+5;
const long long maxm=1e18+5;
long long t,ans,n,a[maxn],b[maxn],x;
int main(){
cin>>t;
while(t--){
cin>>n;
ans=maxm;
for(int i=1;i<=n;i++){
cin>>x;
a[(x+1)/2]=i;
}
for(int i=1;i<=n;i++){
cin>>x;
b[x/2]=i;
}
for(int i=n-1;i>=1;i--){
b[i]=min(b[i],b[i+1]);
}
for(int i=1;i<=n;i++){
ans=min(ans,a[i]+b[i]-2);
}
if(ans!=maxm){
cout<<ans<<"\n";
}
else{
cout<<0<<"\n";
}
}
return 0;
}
本人(KK_SpongeBob)蒟蒻,写不出好文章,但转载请注明原文链接:https://www.cnblogs.com/OIer-QAQ/p/18575289
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期