zoukankan      html  css  js  c++  java
  • 今日头条2018 笔试题1

    /*
    今天头条2018春招笔试题
    在n个元素的数组中,找到差值为k的数字对去重后的个数
    输入描述:
    第一行,n和k,n表示数字个数,k表示差值
    第二行,n个正整数。
    示例1:
    输入:
    5 2
    1 5 3 4 2
    输出:
    3
    示例2:
    输入:
    6 2
    1 5 3 3 4 2
    输出:
    3
    示例3:
    输入:
    4 0
    1 1 1 1
    输出:1
    */
    //author:sandy
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
    vector<int>vec;
    int n, k;
    cin >> n >> k;
    int i = 0, m;
    while (i<n&&cin>>m)
    vec.push_back(m),++i;
    sort(vec.begin(), vec.end());
    vec.erase(unique(vec.begin(), vec.end()), vec.end());//去重,并删除后面的元素
    int num = 0;
    for (auto j = vec.begin(); j != vec.end(); ++j)
    for (auto r = j; r != vec.end();++r)
    if (abs(*j - *r) == k) ++num;
    cout << num << endl;
    return 0;
    }

  • 相关阅读:
    HDU
    HDU
    西电OJ
    西电OJ
    西电OJ
    USACO 2.1-Healthy Holsteins
    USACO 2.1-Sorting a Three-Valued Sequence
    HDU
    UVA
    codeforces 811A Vladik and Courtesy
  • 原文地址:https://www.cnblogs.com/beihaidao/p/8643216.html
Copyright © 2011-2022 走看看