Submission #5540017
Source Code Expand
#include<bits/stdc++.h> using namespace std; #define int long long const int N = 107; const int INF = 1e18 + 7; const int S = 0, T = N - 1; int n; int a[N]; struct Edge { int v, c, f; }; vector <int> g[N]; vector <Edge> ed; void add(int u, int v, int c) { #ifdef HOME cout << "edge " << u << "->" << v << " : " << c << '\n'; #endif g[u].push_back(ed.size()); ed.push_back({v, c, 0}); g[v].push_back(ed.size()); ed.push_back({u, 0, 0}); } bool used[N]; int dfs(int u, int cur) { used[u] = 1; #ifdef HOME cout << "dfs " << u << ' ' << cur << '\n'; #endif if (u == T) return cur; for (int i : g[u]) { auto &e = ed[i]; if (!used[e.v] && e.f < e.c) { int t = dfs(e.v, min(cur, e.c - e.f)); if (t) { e.f += t; ed[i^1].f -= t; return t; } } } #ifdef HOME cout << "out " << u << '\n'; #endif return 0; } int maxflow() { int ans = 0; while (1) { memset(used, 0, sizeof used); int t = dfs(S, INF); if (t) ans += t; else break; } return ans; } signed main() { #ifdef HOME freopen("input.txt", "r", stdin); #else ios_base::sync_with_stdio(0); cin.tie(0); #endif cin >> n; for (int i = 1; i <= n; ++i) cin >> a[i]; for (int i = 1; i <= n; ++i) { if (a[i] > 0) { add(i, T, a[i]); } else { add(S, i, -a[i]); } } for (int i = 1; i <= n; ++i) { for (int j = i * 2; j <= n; j += i) { add(i, j, INF); } } int best = 0; for (int i = 1; i <= n; ++i) best += max(0ll, a[i]); cout << best - maxflow() << '\n'; }
Submission Info
Submission Time | |
---|---|
Task | E - MUL |
User | fastmath |
Language | C++14 (GCC 5.4.1) |
Score | 700 |
Code Size | 1880 Byte |
Status | AC |
Exec Time | 1 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 700 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | example_0, example_1, example_2, example_3 |
All | example_0, example_1, example_2, example_3, kimeuti_0, kimeuti_1, kimeuti_10, kimeuti_11, kimeuti_12, kimeuti_13, kimeuti_14, kimeuti_15, kimeuti_16, kimeuti_17, kimeuti_18, kimeuti_19, kimeuti_2, kimeuti_3, kimeuti_4, kimeuti_5, kimeuti_6, kimeuti_7, kimeuti_8, kimeuti_9, rand_0, rand_1, rand_10, rand_11, rand_12, rand_13, rand_14, rand_15, rand_16, rand_17, rand_18, rand_19, rand_2, rand_3, rand_4, rand_5, rand_6, rand_7, rand_8, rand_9, small_0, small_1, small_2, small_3, small_4 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
example_0 | AC | 1 ms | 256 KB |
example_1 | AC | 1 ms | 256 KB |
example_2 | AC | 1 ms | 256 KB |
example_3 | AC | 1 ms | 256 KB |
kimeuti_0 | AC | 1 ms | 256 KB |
kimeuti_1 | AC | 1 ms | 256 KB |
kimeuti_10 | AC | 1 ms | 256 KB |
kimeuti_11 | AC | 1 ms | 256 KB |
kimeuti_12 | AC | 1 ms | 256 KB |
kimeuti_13 | AC | 1 ms | 256 KB |
kimeuti_14 | AC | 1 ms | 256 KB |
kimeuti_15 | AC | 1 ms | 256 KB |
kimeuti_16 | AC | 1 ms | 256 KB |
kimeuti_17 | AC | 1 ms | 256 KB |
kimeuti_18 | AC | 1 ms | 256 KB |
kimeuti_19 | AC | 1 ms | 256 KB |
kimeuti_2 | AC | 1 ms | 256 KB |
kimeuti_3 | AC | 1 ms | 256 KB |
kimeuti_4 | AC | 1 ms | 256 KB |
kimeuti_5 | AC | 1 ms | 256 KB |
kimeuti_6 | AC | 1 ms | 256 KB |
kimeuti_7 | AC | 1 ms | 256 KB |
kimeuti_8 | AC | 1 ms | 256 KB |
kimeuti_9 | AC | 1 ms | 256 KB |
rand_0 | AC | 1 ms | 256 KB |
rand_1 | AC | 1 ms | 256 KB |
rand_10 | AC | 1 ms | 256 KB |
rand_11 | AC | 1 ms | 256 KB |
rand_12 | AC | 1 ms | 256 KB |
rand_13 | AC | 1 ms | 256 KB |
rand_14 | AC | 1 ms | 256 KB |
rand_15 | AC | 1 ms | 256 KB |
rand_16 | AC | 1 ms | 256 KB |
rand_17 | AC | 1 ms | 256 KB |
rand_18 | AC | 1 ms | 256 KB |
rand_19 | AC | 1 ms | 256 KB |
rand_2 | AC | 1 ms | 256 KB |
rand_3 | AC | 1 ms | 256 KB |
rand_4 | AC | 1 ms | 256 KB |
rand_5 | AC | 1 ms | 256 KB |
rand_6 | AC | 1 ms | 256 KB |
rand_7 | AC | 1 ms | 256 KB |
rand_8 | AC | 1 ms | 256 KB |
rand_9 | AC | 1 ms | 256 KB |
small_0 | AC | 1 ms | 256 KB |
small_1 | AC | 1 ms | 256 KB |
small_2 | AC | 1 ms | 256 KB |
small_3 | AC | 1 ms | 256 KB |
small_4 | AC | 1 ms | 256 KB |