• BZOJ 2916 Monochromatic Triangles


    bitset暴力。

    正解其实也很简单啊。。。。就是数不同色三角形的个数,也就是每个点引出的异色边的对数/2。

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #include<bitset>
    #define maxn 1005
    using namespace std;
    int n,m,ans=0,x,y;
    bitset <maxn> map[maxn],regis;
    int main()
    {
        scanf("%d%d",&n,&m);
        for (int i=1;i<=m;i++)
        {
            scanf("%d%d",&x,&y);
            map[x][y]=1;map[y][x]=1;
        }    
        for (int i=1;i<=n;i++)
            for (int j=i+1;j<=n;j++)
            {
                if (!map[i][j]) continue;
                regis=map[i]&map[j];
                ans+=regis.count();    
            }
        for (int i=1;i<=n;i++)
            for (int j=1;j<=n;j++)
            {
                if (i==j) continue;
                map[i][j]=map[i][j]^1;
            }
        for (int i=1;i<=n;i++)
            for (int j=i+1;j<=n;j++)
            {
                if (!map[i][j]) continue;
                regis=map[i]&map[j];
                ans+=regis.count();    
            }
        printf("%d
    ",ans/3);
        return 0;
    }
  • 相关阅读:
    python安装
    实现node服务器
    VSCode集成tomcat及使用方法
    CommonJS规范
    Bootstrap 笔记
    vue笔记
    jgGrid模板添加
    vue组件中的data
    解析DNS
    StaticResource
  • 原文地址:https://www.cnblogs.com/ziliuziliu/p/6292522.html
Copyright © 2020-2023  润新知