可以使用两层循环遍历数串中的每一个数对,判断是否满足a-b=c的条件,并计数。

具体代码如下:

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n, c;
    cin >> n >> c;

    vector<int> nums(n);
    for (int i = 0; i < n; i++) {
        cin >> nums[i];
    }

    int count = 0;
    for (int i = 0; i < n; i++) {
        for (int j = i + 1; j < n; j++) {
            if (nums[i] - nums[j] == c || nums[j] - nums[i] == c) {
                count++;
            }
        }
    }

    cout << count << endl;

    return 0;
}

代码中,首先读取输入的整数n和c,以及数串nums。 然后使用两层循环遍历数串中的每一个数对,判断是否满足a-b=c的条件,并计数。 最后输出计数结果。

给出一串数以及一个数字 c要求计算出所有 a-b=c的数对的个数不同位置得到数字一样的数对算不同的数对。输入共两行。第一行两个整数 nc。第二行 n个整数a1a2a3anai=1e9作为要处理的那串数。输出该数串中包含的满足a-b=c的数对的个数样例输入6 38 4 5 7 7 4样例输出5C++不使用unorderedmap

原文地址: http://www.cveoy.top/t/topic/ja5e 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录