My first Magazine pemrograman-kompetitif-dasar | Page 5

Daftar Isi 1 Perkenalan Pemrograman Kompetitif 1.1 Kompetensi Dasar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Tentang Pemrograman Kompetitif . . . . . . . . . . . . . . . . . . . . . . . 1.3 Contoh Soal Pemrograman Kompetitif . . . . . . . . . . . . . . . . . . . . . 1.3.1 Solusi Sederhana . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Solusi yang Lebih Baik . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.3 Solusi yang Lebih Baik Lagi! . . . . . . . . . . . . . . . . . . . . . . . 1.4 Mengenal Kompetisi Pemrograman . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 Olimpiade Sains Nasional dan International Olympiad in Informatics 1.4.2 ACM-ICPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Penulisan Kode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6 Perkenalan Pseudocode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Matematika Diskret Dasar 2.1 Arimetika Modular . . . . . . . . . . . . . . . . . . . . . 2.2 Bilangan Prima . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Uji Keprimaan (Primality Testing ) . . . . . . . . . 2.2.2 Pembangkitan Bilangan Prima (Prime Generation ) 2.3 FPB dan KPK . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Pigeonhole Principle (PHP) . . . . . . . . . . . . . . . . 2.5 Kombinatorika . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Aturan Perkalian dan Aturan Penjumlahan . . . . 2.5.2 Permutasi . . . . . . . . . . . . . . . . . . . . . . 2.5.3 Kombinasi . . . . . . . . . . . . . . . . . . . . . . 2.5.4 Segitiga Pascal . . . . . . . . . . . . . . . . . . . 3 Pencarian dan Pengurutan 3.1 Pencarian . . . . . . . . . 3.1.1 Sequential Search 3.1.2 Binary Search . . . 3.1.3 Rangkuman . . . . 3.2 Pengurutan . . . . . . . . 3.2.1 Bubble Sort . . . 3.2.2 Selection Sort . . 3.2.3 Insertion Sort . . 3.2.4 Counting Sort . . 3.2.5 Rangkuman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 2 3 4 5 7 7 8 9 9 . . . . . . . . . . . 11 11 12 12 13 15 15 17 17 19 22 23 . . . . . . . . . . 25 25 25 26 29 29 30 31 32 34 37 4 Brute Force 38 4.1 Konsep Brute Force . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2 Penyelesaian dengan Teknik Brute Force . . . . . . . . . . . . . . . . . . . . . . . 38 4.3 Optimisasi Teknik Brute Force . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 iii