天天看点

CCF CSP 201409-1 相邻数对

题目链接:http://118.190.20.162/view.page?gpid=T16

问题描述

试题编号: 201409-1
试题名称: 相邻数对
时间限制: 1.0s
内存限制: 256.0MB
问题描述:

问题描述

  给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。

输入格式

  输入的第一行包含一个整数n,表示给定整数的个数。

  第二行包含所给定的n个整数。

输出格式

  输出一个整数,表示值正好相差1的数对的个数。

样例输入

6

10 2 6 3 7 8

样例输出

3

样例说明

  值正好相差1的数对包括(2, 3), (6, 7), (7, 8)。

评测用例规模与约定

  1<=n<=1000,给定的整数为不超过10000的非负整数。

和相反数一样,成对出现计数完毕后需要除以二

1 #include <iostream>
 2 #include <algorithm>
 3 #include <cmath> 
 4 using namespace std;
 5 int n;
 6 int a[505];
 7 int main()
 8 {
 9     while(cin>>n){
10         for(int i=0;i<n;i++) cin>>a[i];
11         int sum=0;
12         for(int i=0;i<n;i++){
13             for(int j=0;j<n;j++){
14                 if(abs(a[i]-a[j])==1){
15                     sum++;
16                 }
17             }
18         }
19         cout<<sum/2<<endl;
20     }
21     return 0;
22 }