1. 程式人生 > >ccf 201409-1 相鄰數對(100分)

ccf 201409-1 相鄰數對(100分)

問題描述
  給定n個不同的整數,問這些數中有多少對整數,它們的值正好相差1。
輸入格式
  輸入的第一行包含一個整數n,表示給定整數的個數。
  第二行包含所給定的n個整數。
輸出格式
  輸出一個整數,表示值正好相差1的數對的個數。
樣例輸入
6
10 2 6 3 7 8
樣例輸出
3
樣例說明
  值正好相差1的數對包括(2, 3), (6, 7), (7, 8)。
評測用例規模與約定
  1<=n<=1000,給定的整數為不超過10000的非負整數。
  提交後得100分的C++程式如下:

#include<iostream>
#include<algorithm>
#include<cmath> using namespace std; int a[1005]; int main() { int n; cin >> n; for (int i = 1; i <= n; i++) cin >> a[i]; int sum = 0; for (int i = 1; i <= n; i++) { for (int j = i; j <= n; j++) { if (abs(a[i] - a[j]) == 1) sum++; } } cout
<< sum << endl; return 0; }