# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
872872 | binh192004 | Geppetto (COCI15_geppetto) | C++17 | 1 ms | 604 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include <iostream>
#include <stack>
#include <vector>
#include <set>
#include <queue>
#include <string>
#include <algorithm>
#include <unordered_map>
#include <unordered_set>
#include <map>
using namespace std;
typedef long double ld;
mt19937_64 rnd(chrono::steady_clock::now().time_since_epoch().count());
#define int long long
#define double long double
#define all(x) (x).begin(), (x).end()
#define pii pair<int, int>
#define lowbit(x) x & (-x);
#define inf 1e18
#define _inf -1e18
#define pyes cout << "YES" << endl
#define pno cout << "NO" << endl
#define inv(a) for (int& x: a) cin >> x;
#define llv(a) for (ll& x: a) cin >> x;
#define pri(a) for (int& x: a) cout << x << ' '
int const MOD = 998244353;
int const lg = 20;
int const block = 500;
// int block;
int const MAX = 3e5 + 1, N = 20;
int n, m, q, k;
bool ck[21][21];
int f[21][21];
void bexuyen67() {
cin >> n >> m;
vector<vector<int>> g(n + 1);
for (int i = 0; i < m; i++){
int x, y;
cin >> x >> y;
if (ck[x][y])
continue;
ck[x][y] = ck[y][x] = 1;
if (x > y)
swap(x, y);
g[x].push_back(y);
}
int sum = 1 << n;
for (int i = 1; i <= n; i++){
if (g[i].empty())
continue;
int sz = g[i].size();
int after = n - i - sz;
for (int j = 1; j <= g[i].size(); j++){
for (int k = 0; k <= after; k++){
int tol = f[sz][j]*f[after][k];
sum -= tol;
// cout << tol << '\n';
}
}
}
cout << sum;
}
signed main() {
#ifdef binhball
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
cin.tie(0)->sync_with_stdio(0);
cout << fixed << setprecision(15);
for (int i = 0; i <= N; i++){
f[i][0] = 1;
f[i][i] = 1;
}
for (int i = 2; i <= 20; i++){
for (int j = 1; j <= i; j++){
f[i][j] = f[i - 1][j] + f[i - 1][j - 1];
}
}
int t = 1;
// cin >> t;
while (t--)
bexuyen67();
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |