Submission #1157275
Source Code Expand
#include <sstream>
#include <fstream>
#include <cassert>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <iostream>
#include <iomanip>
#include <algorithm>
#include <vector>
#include <set>
#include <stack>
#include <map>
#include <string>
#include <queue>
#include <bitset>
using namespace std;
#define int long long
#define FOR(i, a, b) for (int i = (a), _b = (b); i <= _b; ++i)
#define FORD(i, a, b) for (int i = (a), _b = (b); i >= _b; --i)
#define REP(i, a) for (int i = 0, _a = (a); i < _a; ++i)
#define REPD(i,n) for(int i = (n)-1; i >= 0; --i)
#define DEBUG(X) { cerr << #X << " = " << (X) << endl; }
#define PR(A, n) { cerr << #A << " = "; FOR(_, 1, n) cerr << A[_] << ' '; cerr << endl; }
#define PR0(A, n) { cerr << #A << " = "; REP(_, n) cerr << A[_] << ' '; cerr << endl; }
#define sqr(x) ((x) * (x))
#define ll long long
#define double long double
typedef pair<int, int> II;
#define PI (2 * acos((double)0))
#define __builtin_popcount __builtin_popcountll
#define SZ(x) ((int)(x).size())
#define ALL(a) (a).begin(), (a).end()
#define MS(a,x) memset(a, x, sizeof(a))
#define next ackjalscjaowjico
#define prev ajcsoua0wucckjsl
#define y1 alkscj9u20cjeijc
#define left lajcljascjljl
#define right aucouasocjolkjl
#define y0 u9cqu3jioajc
#define TWO(X) (1LL<<(X))
#define CONTAIN(S,X) ((S) & TWO(X))
double safe_sqrt(double x) { return sqrt(max((double)0.0, x)); }
int GI(int& x) { return scanf("%lld", &x); }
const int MN = 100111;
vector<int> ke[MN];
bool good;
int cnt;
int color[MN];
void dfs(int u) {
++cnt;
for(int v : ke[u]) {
if (color[v] < 0) {
color[v] = 1 - color[u];
dfs(v);
}
else {
if (color[v] == color[u]) good = true;
}
}
}
int32_t main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout << (fixed) << setprecision(9);
int n, m;
while (cin >> n >> m) {
FOR(i,1,n) ke[i].clear();
FOR(i,1,m) {
int u, v; cin >> u >> v;
ke[u].push_back(v);
ke[v].push_back(u);
}
memset(color, -1, sizeof color);
int single = 0;
int hasOddCycle = 0;
int normal = 0;
FOR(i,1,n) if (color[i] < 0) {
cnt = 0;
good = false;
color[i] = 0;
dfs(i);
if (cnt == 1) single++;
else if (good) hasOddCycle++;
else normal++;
}
int res = 0;
// single, x
while (single > 0) {
res += 2 * n - 1;
--n;
--single;
}
// normal, normal
res += normal * (normal+1);
// odd, odd
res += hasOddCycle * (hasOddCycle + 1) / 2;
// normal, odd
res += normal * hasOddCycle * 2;
cout << res << endl;
}
return 0;
}
Submission Info
Submission Time |
|
Task |
C - Squared Graph |
User |
I_love_Hoang_Yen |
Language |
C++14 (GCC 5.4.1) |
Score |
0 |
Code Size |
2981 Byte |
Status |
WA |
Exec Time |
86 ms |
Memory |
12416 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 |
WA |
3 ms |
3328 KB |
in10.txt |
AC |
3 ms |
3328 KB |
in11.txt |
WA |
3 ms |
3328 KB |
in12.txt |
WA |
19 ms |
6528 KB |
in13.txt |
WA |
19 ms |
6528 KB |
in14.txt |
WA |
37 ms |
6528 KB |
in15.txt |
WA |
6 ms |
3712 KB |
in16.txt |
WA |
28 ms |
5888 KB |
in17.txt |
WA |
22 ms |
6272 KB |
in18.txt |
WA |
56 ms |
8576 KB |
in19.txt |
WA |
40 ms |
8064 KB |
in2.txt |
WA |
3 ms |
3456 KB |
in20.txt |
WA |
40 ms |
8192 KB |
in21.txt |
WA |
86 ms |
12416 KB |
in22.txt |
AC |
48 ms |
9216 KB |
in23.txt |
AC |
35 ms |
7808 KB |
in24.txt |
WA |
3 ms |
3456 KB |
in25.txt |
WA |
86 ms |
12416 KB |
in26.txt |
AC |
3 ms |
3328 KB |
in27.txt |
WA |
3 ms |
3456 KB |
in28.txt |
WA |
84 ms |
12416 KB |
in3.txt |
AC |
3 ms |
3456 KB |
in4.txt |
AC |
3 ms |
3456 KB |
in5.txt |
WA |
52 ms |
7936 KB |
in6.txt |
WA |
5 ms |
3712 KB |
in7.txt |
WA |
5 ms |
3584 KB |
in8.txt |
WA |
9 ms |
4224 KB |
in9.txt |
WA |
24 ms |
5888 KB |
sample1.txt |
AC |
3 ms |
3328 KB |
sample2.txt |
AC |
3 ms |
3328 KB |