Submission #1678305
Source Code Expand
#include<set>
#include<map>
#include<cmath>
#include<queue>
#include<bitset>
#include<string>
#include<cstdio>
#include<cctype>
#include<cassert>
#include<cstdlib>
#include<cstring>
#include<sstream>
#include<iostream>
#include<algorithm>
#define For(i,x,y) for (int i=x;i<y;i++)
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define lf else if
#define dprintf(...) fprintf(stderr,__VA_ARGS__)
using namespace std;
typedef long long ll;
typedef double db;
typedef pair<int,int> pii;
typedef vector<int> Vi;
int IN(){
int c,f,x;
while (!isdigit(c=getchar())&&c!='-');c=='-'?(f=1,x=0):(f=0,x=c-'0');
while (isdigit(c=getchar())) x=(x<<1)+(x<<3)+c-'0';return !f?x:-x;
}
const int N=100000+19;
const int M=200000+19;
struct Edge{
int y,nxt;
} E[M*2];
int las[N],vis[N];
int n,m,x,y,cnt,ji,ou,sz,yi;
ll ans;
void Link(int x,int y){
E[cnt]=(Edge){y,las[x]};las[x]=cnt++;
E[cnt]=(Edge){x,las[y]};las[y]=cnt++;
}
bool dfs(int x,int col){
if (~vis[x]) return vis[x]!=col;
vis[x]=col;
sz++;
for (int i=las[x],y;~i;i=E[i].nxt)
if (vis[y=E[i].y]==-1){
if (dfs(y,col^1)) return 1;
} lf (vis[y]!=(col^1)){
return 1;
}
return 0;
}
int main(){
memset(las,-1,sizeof(las));
memset(vis,-1,sizeof(vis));
n=IN(),m=IN();
For(i,0,m) Link(IN(),IN());
For(i,1,n+1) if (vis[i]==-1){
sz=0;
int tmp=dfs(i,0);
if (sz==1) yi++;lf (tmp) ji++;else ou++;
}
ans=ji+2*ou;
ans+=2ll*ji*ou;
ans+=1ll*ji*(ji-1);
ans+=2ll*ou*(ou-1);
ans+=2ll*yi*(n-yi);
ans+=1ll*yi*yi;
cout<<ans<<endl;
}
Submission Info
Submission Time |
|
Task |
C - Squared Graph |
User |
rxdoi |
Language |
C++14 (GCC 5.4.1) |
Score |
0 |
Code Size |
1608 Byte |
Status |
WA |
Exec Time |
28 ms |
Memory |
4224 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
0 / 800 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample1.txt, sample2.txt |
All |
sample1.txt, sample2.txt, in1.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in2.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in3.txt, in4.txt, in5.txt, in6.txt, in7.txt, in8.txt, in9.txt, sample1.txt, sample2.txt |
Case Name |
Status |
Exec Time |
Memory |
in1.txt |
AC |
2 ms |
1024 KB |
in10.txt |
AC |
2 ms |
1024 KB |
in11.txt |
AC |
2 ms |
1024 KB |
in12.txt |
AC |
8 ms |
1792 KB |
in13.txt |
AC |
8 ms |
1792 KB |
in14.txt |
AC |
14 ms |
2560 KB |
in15.txt |
WA |
3 ms |
1152 KB |
in16.txt |
WA |
11 ms |
2176 KB |
in17.txt |
WA |
9 ms |
1920 KB |
in18.txt |
WA |
20 ms |
3200 KB |
in19.txt |
WA |
16 ms |
2560 KB |
in2.txt |
WA |
2 ms |
1024 KB |
in20.txt |
WA |
16 ms |
2560 KB |
in21.txt |
WA |
28 ms |
4224 KB |
in22.txt |
WA |
19 ms |
4096 KB |
in23.txt |
WA |
16 ms |
4096 KB |
in24.txt |
AC |
2 ms |
1024 KB |
in25.txt |
WA |
27 ms |
4224 KB |
in26.txt |
WA |
2 ms |
1024 KB |
in27.txt |
WA |
2 ms |
1024 KB |
in28.txt |
WA |
28 ms |
4224 KB |
in3.txt |
WA |
2 ms |
1024 KB |
in4.txt |
WA |
2 ms |
1024 KB |
in5.txt |
WA |
21 ms |
3584 KB |
in6.txt |
AC |
3 ms |
1152 KB |
in7.txt |
WA |
3 ms |
1152 KB |
in8.txt |
WA |
4 ms |
1280 KB |
in9.txt |
WA |
10 ms |
1920 KB |
sample1.txt |
AC |
2 ms |
1024 KB |
sample2.txt |
AC |
2 ms |
1024 KB |