diff options
| author | mzuenni <michi.zuendorf@gmail.com> | 2023-01-31 16:28:59 +0100 |
|---|---|---|
| committer | mzuenni <michi.zuendorf@gmail.com> | 2023-01-31 16:28:59 +0100 |
| commit | dca70f3ff8aa6e0a7b2a9ceb06d8b7f1f8d550c2 (patch) | |
| tree | 54e86ce7723b2c44af34a1470e90728e5b9435b2 /other | |
| parent | f23679138f76033d2e0e60373344573de59b9476 (diff) | |
added new code
Diffstat (limited to 'other')
| -rw-r--r-- | other/other.tex | 3 | ||||
| -rw-r--r-- | other/sos.cpp | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/other/other.tex b/other/other.tex index 1a56919..a5a05b0 100644 --- a/other/other.tex +++ b/other/other.tex @@ -78,6 +78,9 @@ \paragraph{Quadrangle inequality} Die Bedingung $\forall a\leq b\leq c\leq d: C[a][d] + C[b][c] \geq C[a][c] + C[b][d]$ ist hinreichend für beide Optimierungen. + + \paragraph{Sum over Subsets DP} $\text{res}[\text{mask}]=\sum_{i\subseteq\text{mask}}\text{in}[i]$ + \sourcecode{other/sos.cpp} \end{algorithm} \begin{algorithm}{Parallel Binary Search} diff --git a/other/sos.cpp b/other/sos.cpp new file mode 100644 index 0000000..0fe5dc0 --- /dev/null +++ b/other/sos.cpp @@ -0,0 +1,6 @@ +vector<ll> res(in); +for (int i = 1; i < sz(res); i *= 2) { + for (int mask = 0; mask < sz(res); mask++){ + if (mask & i) { + F[mask] += F[mask ^ i]; +}}} |
