zoukankan      html  css  js  c++  java
  • Codeforces Round #561 (Div. 2) C. A Tale of Two Lands

    链接:https://codeforces.com/contest/1166/problem/C

    题意:

    The legend of the foundation of Vectorland talks of two integers xx and yy. Centuries ago, the array king placed two markers at points |x||x| and |y||y| on the number line and conquered all the land in between (including the endpoints), which he declared to be Arrayland. Many years later, the vector king placed markers at points |xy||x−y| and |x+y||x+y| and conquered all the land in between (including the endpoints), which he declared to be Vectorland. He did so in such a way that the land of Arrayland was completely inside (including the endpoints) the land of Vectorland.

    Here |z||z| denotes the absolute value of zz.

    Now, Jose is stuck on a question of his history exam: "What are the values of xx and yy?" Jose doesn't know the answer, but he believes he has narrowed the possible answers down to nnintegers a1,a2,,ana1,a2,…,an. Now, he wants to know the number of unordered pairs formed by two different elements from these nn integers such that the legend could be true if xx and yywere equal to these two values. Note that it is possible that Jose is wrong, and that no pairs could possibly make the legend true.

    思路:

    因为需要满足条件 min(|x-y|, |x+y|) <= |x| <= |y| <= max(|x-y|, |x+y|).

    所以将x变成-x并不影响条件。所以将所有输入全部取绝对值。

    再排序,二分查找。

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    
    typedef long long LL;
    const int MAXN = 2e5+10;
    
    int a[MAXN];
    
    int main()
    {
        int n;
        cin >> n;
        for (int i = 1;i <= n;i++)
            cin >> a[i], a[i] = abs(a[i]);
        sort(a+1, a+1+n);
        LL res = 0;
        for (int i = 1;i <= n;i++)
            res += (upper_bound(a+1, a+1+n, 2*a[i])-a)-i-1;
        cout << res << endl;
    
        return 0;
    }
    

      

  • 相关阅读:
    rac node1节点侦听地址为127.0.0.1问题
    rac crs节点故障(未解决)
    杂牌设备网络接入引起交换机引起端口翻转的故障
    Impdp导出前准备工作以及主要命令
    查询dba_tables视图tablespaces_name为空的问题
    Expdp导出前准备工作以及主要命令
    带参数的方法解析
    类的无参方法,注释
    类和对象的解析
    二重循环的解析
  • 原文地址:https://www.cnblogs.com/YDDDD/p/10900157.html
Copyright © 2011-2022 走看看