初级光能
http://judge.codingtang.com/problem/1772/
1772 A - B = C
题目描述 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
求思路,
谢谢!
初级光能
for(int i=1;i<=n;i++)
{
if(a[i]>max)
{
max=a[i];
}
}
for(int i=1;i<=n;i++)
{
if(a[i]+c<=max)
{
if(count[a[i]+c]>0)
{
num=num+count[a[i]+c];
}
}
}
这题如果用桶排序只能80分;
100分方法是map滚动数组;
for(int i=1; i<=n; i++)
{
cin>>a[i];
b[a[i]]++;
}
for(int i=1; i<=n; i++)
if(b[a[i]+m])
{
s+=b[a[i]+m];
}
还有头文件,#include<map>