Olimpiade Sains Nasional 2023 Bidang Informatika
Tidak terdapat perbedaan dengan Silabus OSN 2022.
Mengacu pada silabus IOI 2023 dengan berbagai penyesuaian.
- Dasar-dasar Pemrograman
            
- Sintaks dan semantik dasar dari bahasa yang diperbolehkan pada OSN yang bersangkutan
 - Variabel, tipe data, ekspresi, dan assignment
 - Masukan dan keluaran dasar
 - Percabangan dan perulangan
 - Fungsi dan parameter
 
 - Operasi Logika dan Bitwise
            
- Operator logika dasar (konjungsi, disjungsi, implikasi, biimplikasi, disjungsi eksklusif)
 - Tabel kebenaran
 - Modus Ponens dan modus Tollens
 
 - Aritmetika
            
- Bilangan bulat, operasi (termasuk perpangkatan), perbandingan
 - Sifat-sifat bilangan bulat (tanda, paritas, keterbagian)
 - Operasi-operasi modular dasar (penjumlahan, pengurangan, perkalian)
 - Perpangkatan modular
 - Bilangan prima
 - Bilangan pecahan, persentase
 - Teori bilangan
 - Teori himpunan
 
 - Aturan Berhitung
            
- Aturan penjumlahan dan perkalian
 - Barisan aritmetika dan geometri
 - Bilangan Fibonacci
 - Permutasi dan kombinasi
 - Probabilitas
 - Pigeonhole principle
 - Prinsip inklusi dan eksklusi
 - Segitiga Pascal, teorema binomial
 
 - Rekursi
            
- Konsep rekursi
 - Fungsi matematis rekursi
 - Prosedur rekursi sederhana
 - Divide-and-conquer
 - Backtracking
 
 - Pencarian dan Pengurutan
            
- Linear search
 - Binary search
 - Bubble sort, insertion sort
 - Quicksort, merge sort, heapsort
 
 - Strategi Pemecahan Masalah
            
- Brute-force
 - Greedy
 - Divide-and-conquer
 - Backtracking (rekursif dan bukan rekursif)
 - Dynamic programming
 
 - Struktur Data
            
- Tipe data primitif (boolean, integer, character, floating point numbers)
 - Array (termasuk multidimensi)
 - String dan operasinya
 - Stack dan queue
 - Binary heap
 - Disjoint set
 - Segment tree (point update range query)
 
 - Graf dan Tree
            
- Tree dasar (termasuk rooted tree)
 - Graf berarah dan graf tak berarah
 - Graf berbobot dan graf tak berbobot
 - Representasi graf (adjacency List, adjacency matrix, edge list)
 - Penjelajahan graf (BFS, DFS, keterhubungan)
 - Shortest path (algoritma Dijkstra, algoritma Bellman-Ford, algoritma Floyd-Warshall)
 - Minimum spanning tree (algoritma JarnÃk-Prim, algoritma Kruskal)
 
 - Geometri Dasar
            
- Garis, segmen garis, sudut
 - Segitiga, persegi, persegi panjang, lingkaran
 - Titik, koordinat pada bidang Kartesius 2 dimensi
 - Jarak Euclidean
 - Teorema Pythagoras
 - Convex Hull (algoritma Graham scan, algoritma Monotone chain)