Teknik Pemecahan Masalah. Teknik umum yang berlaku lintas topik: two pointers, sliding window, sweep line, dll.
Setiap Chapter pada Section ini disusun bertahap: konsep dasar, implementasi C++, lalu latihan dan refleksi. Pastikan pembaca menyelesaikan Chapter sebelumnya karena topik saling berkaitan.
Membaca soal dengan cermat: input, output, constraint, dan klasifikasi tipe masalah.
Buka → # Menyusun PendekatanKerangka berpikir dari brute force ke solusi optimal: brute force → pola → optimasi → verifikasi.
Buka → # Brute ForceSolusi paling sederhana sebagai baseline; enumerasi semua kemungkinan secara sistematis.
Buka → # Divide and ConquerMembagi masalah jadi sub-masalah, menyelesaikan, lalu menggabungkan — disertai Master Theorem.
Buka → # Two PointersStrategi dua indeks yang bergerak konvergen atau paralel — recap cepat dan variasi lanjutan.
Buka → # Sliding WindowRecap cepat window geser dan variasi lanjutan: K-distinct, sum ≤ K, permutation in string.
Buka → # Prefix SumRecap prefix sum 1D dan ekstensi ke 2D plus kombinasi dengan difference array.
Buka → # Difference TechniqueTeknik difference array 2D, event counting, dan aplikasi paint problem.
Buka → # Coordinate CompressionMemetakan nilai besar ke indeks kecil agar segment tree dan BIT tetap efisien.
Buka → # Sweep LineMemproses event terurut oleh koordinat untuk solusi geometri dan interval.
Buka → # Meet in the MiddleMembagi masalah jadi dua, selesaikan tiap bagian, lalu gabungkan untuk memangkas 2^n menjadi 2^(n/2).
Buka → # Memilih Struktur DataTabel keputusan memilih struktur data berdasarkan operasi yang dominan.
Buka →