Advertisement

GPLT-L²₂ 三足鼎立

阅读量:

当三个国家中任意两国的实力总和均超过第三国时,这三个国家之间形成相互结盟的“三足鼎立”局面,这种局势具有最高的稳定性。
目前已知本国的实力数值,并提供了 n 个其他国家的实力数据。需要从这 n 个国家中挑选出两个进行结盟,从而构建三足鼎立的格局。共有多少种可行的选择方式?

思路详见代码
lower_bound()
upper_bound()
其底层实现依赖于二分查找算法

复制代码
    #include<iostream>
    #include<algorithm>
    using namespace std;
    #define int long long
    const int maxn=1e5+10;
    int arr[maxn];
    signed main()
    {
    int n,m,ans=0;
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>arr[i];
    }
    sort(arr+1,arr+1+n);
    for(int i=1;i<=n;i++){
    
        int x=arr[i],y=m;
        //寻找z满足x+y>z , x+z > y ,y + z > x ,即 z<x+y 且 z >

全部评论 (0)

还没有任何评论哟~