洛谷 P1989 无向图三元环计数
作者:互联网
晚上abc的G题考到了,听说是典中典
搞了一下O(m*sqrt(m))的写法
但是在atcoder超时,明天补bitset的写法
时间复杂度的证明
使用bitset的题解
#include<bits/stdc++.h>
using namespace std;
#define fr first
#define se second
#define et0 exit(0);
typedef long long LL;
typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;
typedef unsigned long long ULL;
const int INF = 0X3f3f3f3f, N = 1e5 + 10, MOD = 1e9 + 7;
const double eps = 1e-7;
int vis[N];
vector<int> g[N];
void work() {
int n,m;
cin>>n>>m;
for(int i=1;i<=m;i++){
int x,y;
scanf("%d %d",&x,&y);
g[x].push_back(y);
g[y].push_back(x);
}
int res=0;
for(int i=1;i<=n;i++){
for(int j:g[i])
if(g[i].size()>g[j].size() || g[i].size()==g[j].size() && i<j)
vis[j]=i;
for(int j:g[i])
if(g[i].size()>g[j].size() || g[i].size()==g[j].size() && i<j)
for(int k:g[j])
if(g[j].size()>g[k].size() || g[j].size()==g[k].size() && j<k)
if(vis[k]==i)
res++;
}
cout<<res<<endl;
}
signed main() {
work();
return 0;
}
标签:typedef,洛谷,int,long,无向,ig,&&,P1989,size 来源: https://www.cnblogs.com/xhy666/p/16439096.html