CCF 相邻数对

怼烎@ 2021-06-24 15:57 567阅读 0赞

一、试题

问题描述
  给定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<cstdio>
  2. #include<algorithm>
  3. using namespace std;
  4. int main(){
  5. int n,total = 0;
  6. int nums[1000];
  7. scanf("%d", &n);
  8. for(int i=0; i<n; i++){
  9. scanf("%d", &nums[i]);
  10. }
  11. sort(nums, nums+n);
  12. for(int j=0; j<n-1; j++){
  13. if(nums[j+1]-nums[j]==1){
  14. total++;
  15. }
  16. }
  17. printf("%d",total);
  18. return 0;
  19. }

发表评论

表情:
评论列表 (有 0 条评论,567人围观)

还没有评论,来说两句吧...

相关阅读

    相关 C++程序设计:相邻

    【问题描述】 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。 【输入形式】 输入的第一行包含一个整数n,表示给定整数的个数。 第二行包含所给定的n个

    相关 CCF 相邻

    一、试题 问题描述   给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1。 输入格式   输入的第一行包含一个整数n,表示给定整数的个数。

    相关 CCF 中间

    一、试题 问题描述   在一个整数序列a1, a2, …, an中,如果存在某个数,大于它的整数数量等于小于它的整数数量,则称其为中间数。在一个序列中,可能存在多个下

    相关 CCF 相反

    一.问题描述   有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。 输入格式   第一行包含一个正整数 N。(1