Codeforces Round #627 (Div. 3) D - Pair of Topics(双指针)
2024-10-21 06:20:10
题意:
有长为n的a,b两序列,问满足ai+aj>bi+bj(i<j)的i,j对数。
思路:
移项得:(ai-bi)+(aj-bj)>0,i<j即i!=j,用c序列保存所有ai-bi的值,排序,若左右数之和大于0,则右数与二数间的数之和都大于0,计入结果后移动右指针,否则移动左指针。
Tips:
c[i]+c[j]和ans可能会超范围
#include <bits/stdc++.h>
using namespace std;
typedef long long ll; void solve(){
int n;cin>>n;
ll a[n],b[n];
for(int i=0;i<n;i++) cin>>a[i];
for(int i=0;i<n;i++) cin>>b[i];
ll c[n];
for(int i=0;i<n;i++) c[i]=a[i]-b[i];
sort(c,c+n);
ll l=0,r=n-1,ans=0;
while(l<r){
if(c[r]+c[l]>0) ans+=r-l,--r;
else ++l;
}
cout<<ans<<endl;
} int main(){
solve();
return 0;
}
最新文章
- Android学习第二天-android常用命令
- IDC机房线路质量测试方案
- Creating a ClickOnce application
- Java学习笔记四——运算符
- JAVA下的Thread.sleep方法一定要try
- Android Studio Exception汇总
- php <;? ?>; <;?php ?>;
- 黄聪:C#图片处理封装类(裁剪、缩放、清晰度、加水印、生成缩略图)有示例(转)
- Boost使用笔记(Smart_ptr)
- android 联网
- solr安装血泪史
- 【Java入门提高篇】Day13 Java中的反射机制
- JAVA中的常量定义在class中还是interface中比较合理?
- 第六十八天 js轮播图
- Python3基础 dict in/not in 查询一个字符是否指定字典的键或者值
- 201621123001 《Java程序设计》第11周学习总结
- Unit的各种断言
- [机器学习]-K近邻-最简单的入门实战例子
- Python复数属性和方法操作实例
- Django博客项目思路整理
热门文章
- 2021年了,`IEnumerator`、`IEnumerable`还傻傻分不清楚?
- python模块详解 | shutil
- 原生javascript制作省市区三级联动详细教程
- linux服务开机自启动&;注册系统服务
- npm i 报错 &#39;match&#39; of undefined 错误以及删除node_modules失败
- Junit测试和反射
- js千分位分隔,数字货币化方法学习记录
- join 查询优化
- mysql主从复制安装配置
- SpringBoot 报错: Circular view path [readingList] 解决办法