zoukankan      html  css  js  c++  java
  • 三色环

    题面

    给定一张含有 nn 个点的无向完全图,其中 mm 条边是白边,其余是黑边。

    现在需要你求出同色的三元环(或者说,三角形)的个数。


    同色三角形其实难算,那么我们可以算异色三角形,用三角形的总个数减去它的一半

    如果一个点可以连出白色边x条就可以连出黑色边nx1条

    那我们从x条白边任意选一条,从n-x-1条黑边任意选一条,剩下一条边随意

    所以不同色三角形的个数就是x*(n-1-x)

    之后1-n枚举

    n个点可以构成的三角形个数就是n(n1)(n2)/(123)

    再减去sumn的一半就是答案

    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    ll ans,n,m,a[100009];
    int main()
    {
        cin>>n>>m;
        for(int i=1;i<=m;i++)
        {
            int l,r;
            cin>>l>>r;
            a[l]++;a[r]++;
        }
        for(int i=1;i<=n;i++)
            ans+=(a[i]*(n-1-a[i]));
        ll z=1;
        z=n*(n-1)*(n-2)/6;
        cout<<z-ans/2;
    }
  • 相关阅读:
    Grid布局方式
    布局
    应用主题资源
    主题资源
    返回键
    标记 {x:Null},d:DesignWidth,d:DesignHeight
    WMAppManifest.xml
    项目模板
    Panorama和Pivot控件
    ashx页面中context.Session["xxx"]获取不到值的解决办法
  • 原文地址:https://www.cnblogs.com/iss-ue/p/12486845.html
Copyright © 2011-2022 走看看