summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Jungeblut <paul.jungeblut@gmail.com>2016-10-02 18:40:00 +0200
committerPaul Jungeblut <paul.jungeblut@gmail.com>2016-10-02 18:40:00 +0200
commit3ef01f79baa2dd8c391e31c2a6fd02b97cdb75ec (patch)
treefa3d4b23f64213c184137d2c897cee7092ff7d4b
parent67769117dcba2cac127f32c5923cbac8c5017db9 (diff)
Smaller code for segtree.
-rw-r--r--datastructures/segmentTree.cpp11
-rw-r--r--tcr.pdfbin269660 -> 268871 bytes
-rw-r--r--tcr.tex2
3 files changed, 3 insertions, 10 deletions
diff --git a/datastructures/segmentTree.cpp b/datastructures/segmentTree.cpp
index 93a2ceb..cb303d1 100644
--- a/datastructures/segmentTree.cpp
+++ b/datastructures/segmentTree.cpp
@@ -11,11 +11,7 @@ int query(int x, int y, int k = 0, int X = 0, int Y = MAX_N - 1) {
void update(int i, int v, int k = 0, int X = 0, int Y = MAX_N - 1) {
if (i < X || Y < i) return;
- if (X == Y) {
- m[k] = v;
- a[i] = v;
- return;
- }
+ if (X == Y) { m[k] = v; a[i] = v; return; }
int M = (X + Y) / 2;
update(i, v, 2 * k + 1, X, M);
update(i, v, 2 * k + 2, M + 1, Y);
@@ -24,10 +20,7 @@ void update(int i, int v, int k = 0, int X = 0, int Y = MAX_N - 1) {
// Einmal vor allen anderen Operationen aufrufen.
void init(int k = 0, int X = 0, int Y = MAX_N - 1) {
- if (X == Y) {
- m[k] = a[X];
- return;
- }
+ if (X == Y) { m[k] = a[X]; return; }
int M = (X + Y) / 2;
init(2 * k + 1, X, M);
init(2 * k + 2, M + 1, Y);
diff --git a/tcr.pdf b/tcr.pdf
index 0ce6084..df33182 100644
--- a/tcr.pdf
+++ b/tcr.pdf
Binary files differ
diff --git a/tcr.tex b/tcr.tex
index 6467216..98cb063 100644
--- a/tcr.tex
+++ b/tcr.tex
@@ -67,7 +67,7 @@
}
% Don't waste space at the page borders.
-\usepackage[top=2cm, bottom=2cm, left=2cm, right=1cm]{geometry}
+\usepackage[top=2cm, bottom=1cm, left=1cm, right=1cm]{geometry}
% Multicol layout for the table of contents.
\usepackage{multicol}