当前位置:网站首页>CodeForces - 1324D Pair of Topics(二分或双指针)
CodeForces - 1324D Pair of Topics(二分或双指针)
2022-07-07 07:09:00 【moyangxian】
题意:略
题记:
做法一:二分
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;
int a[N],b[N],c[N];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
cin>>b[i],c[i]=a[i]-b[i];
sort(c+1,c+1+n);
ll ans=0;
for(int i=1;i<=n;i++){
if(c[i]<=0) continue;
int p=upper_bound(c+1,c+1+n,-c[i])-c;
ans+=i-p;
}
cout<<ans<<endl;
return 0;
}
做法二:双指针
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=2e5+10;
int a[N],b[N],c[N];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
cin>>b[i],c[i]=a[i]-b[i];
sort(c+1,c+1+n);
ll ans=0;
int l=1,r=n;
while(l<r){
if(c[l]+c[r]>0){
ans+=r-l;
r--;
}
else l++;
}
cout<<ans<<endl;
return 0;
}
边栏推荐
猜你喜欢
随机推荐
进程和线程的区别
Sqlplus garbled code problem, find the solution
Netease cloud wechat applet
大佬们,请问 MySQL-CDC 有什么办法将 upsert 消息转换为 append only 消
How to use clipboard JS library implements copy and cut function
How will fashion brands enter the meta universe?
Unity uses mesh to realize real-time point cloud (I)
信息安全实验三 :PGP邮件加密软件的使用
shake数据库中怎么使用Mongo-shake实现MongoDB的双向同步啊?
NETCORE 3.1 solves cross domain problems
H5网页播放器EasyPlayer.js如何实现直播视频实时录像?
PostgreSQL创建触发器的时候报错,
How to become a senior digital IC Design Engineer (1-6) Verilog coding Grammar: Classic Digital IC Design
Kubernetes cluster capacity expansion to add node nodes
[Frida practice] "one line" code teaches you to obtain all Lua scripts in wegame platform
The difference between viewpager2 and viewpager and the implementation of viewpager2 in the rotation chart
Over 100000 words_ Ultra detailed SSM integration practice_ Manually implement permission management
其实特简单,教你轻松实现酷炫的数据可视化大屏
Switching value signal anti shake FB of PLC signal processing series
What is MD5