0
已解决
熊智晖
高级天翼
高级天翼
1772 A - B = C
经验值:1200 时间限制:1000毫秒
题目描述 Description
给定 n 个数 ai,以及一个正整数 c ,问有多少对 i j,满足 ai - aj = c
输入描述 Input Description
第 1 行:整数 n 和 c
第 2 至 n+1 行:每行包含一个整数 ai
输出描述 Output Description
输出能满足 ai - aj = c 的数的对数
样例输入 Sample Input
5 3 2 1 4 2 5
样例输出 Sample Output
3
数据范围及提示 Data Size & Hint
n <= 200000,所有数字保证在32位有符号整型内。
#include<iostream>
#include<string>
using namespace std;
long long n,a[1002],b[1004],cnt=0,m;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i]-a[j]==m){
cnt++;
}
}
}
if(cnt>0){
cout<<cnt;
}
else{
cout<<"No";
}
return 0;
}
70分????
0
已采纳
王一帆
中级守护
中级守护
int n,a[],c,s; cin>>n>>c;
for
(int
i=1;
i<=n;i++){ cin>>a[i]; }
sort(a+1,a+n+1); for(in
t i=1;i<
=n;i++){ for(int j=
i+1;j<=n;j++
){ if(a[j]
-a[i]==c){ s++; } i
f(a[j]-a[i]>c){ break
; } } } cout<<s; re
turn 0; }
0
0
0