Submission #1157269
Source Code Expand
//#define _GLIBCXX_DEBUG #include <bits/stdc++.h> using namespace std; #define pb push_back #define mp make_pair #define fst first #define snd second #define forn(i, n) for (int i = 0; i < int(n); ++i) typedef long long ll; typedef vector<int> vi; typedef vector<vi> vvi; typedef vector<ll> vll; typedef vector<char> vc; typedef pair<int, int> pii; typedef vector<pii> vii; #define sz(c) (int)(c).size() #define all(c) (c).begin(), (c).end() void dfs (int x, const vvi &g, vi &color, vi &comp) { comp.pb(x); for (int dest : g[x]) if (color[dest] == -1) { color[dest] = (color[x] ^ 1); dfs(dest, g, color, comp); } } void solve (int n) { vvi g(n); int m; cin >> m; forn (i, m) { int u, v; cin >> u >> v; --u, --v; g[u].pb(v); g[v].pb(u); } int cnt1 = 0, cntodd = 0, cntev = 0; vi color(n, -1); forn (i, n) if (color[i] == -1) { vi comp; color[i] = 0; dfs(i, g, color, comp); if (sz(comp) == 1) cnt1++; else { bool ok = true; for (int x : comp) for (int dest : g[x]) ok &= (color[x] != color[dest]); if (ok) cntev++; else cntodd++; } } ll ans = (ll)cnt1 * (ll)cnt1 + 2 * (ll)(n - cnt1) * cnt1; ans += 2 * (ll)cntev * (ll)cntev; ans += (ll)cntodd * (ll)cntodd + 2 * (ll)cntev * (ll)cntodd; cout << ans << endl; } int main() { ios_base::sync_with_stdio(false); cin.tie(0); int n; while (cin >> n) solve(n); }
Submission Info
Submission Time | |
---|---|
Task | C - Squared Graph |
User | Kaban5 |
Language | C++14 (GCC 5.4.1) |
Score | 800 |
Code Size | 1711 Byte |
Status | AC |
Exec Time | 100 ms |
Memory | 11388 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 800 / 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 | 1 ms | 256 KB |
in10.txt | AC | 6 ms | 2944 KB |
in11.txt | AC | 1 ms | 256 KB |
in12.txt | AC | 25 ms | 6144 KB |
in13.txt | AC | 24 ms | 6144 KB |
in14.txt | AC | 43 ms | 6144 KB |
in15.txt | AC | 9 ms | 3456 KB |
in16.txt | AC | 31 ms | 4608 KB |
in17.txt | AC | 26 ms | 5888 KB |
in18.txt | AC | 53 ms | 7680 KB |
in19.txt | AC | 45 ms | 8064 KB |
in2.txt | AC | 1 ms | 256 KB |
in20.txt | AC | 44 ms | 8064 KB |
in21.txt | AC | 78 ms | 11388 KB |
in22.txt | AC | 45 ms | 4096 KB |
in23.txt | AC | 32 ms | 2560 KB |
in24.txt | AC | 7 ms | 3072 KB |
in25.txt | AC | 78 ms | 11388 KB |
in26.txt | AC | 1 ms | 256 KB |
in27.txt | AC | 1 ms | 384 KB |
in28.txt | AC | 100 ms | 11388 KB |
in3.txt | AC | 1 ms | 256 KB |
in4.txt | AC | 1 ms | 256 KB |
in5.txt | AC | 55 ms | 5760 KB |
in6.txt | AC | 8 ms | 3328 KB |
in7.txt | AC | 8 ms | 3200 KB |
in8.txt | AC | 12 ms | 3840 KB |
in9.txt | AC | 26 ms | 5376 KB |
sample1.txt | AC | 1 ms | 256 KB |
sample2.txt | AC | 1 ms | 256 KB |