Latihan soal coding yang diperiksa otomatis
138 soal dalam 14 unit, dari membaca satu baris masukan sampai graf dan pemrograman dinamis ala OSN. Kerjakan dengan Python, JavaScript, C, Java atau PHP, kumpulkan XP, jaga streak, dan bersaing di liga mingguan.
- 31 soal Pemula
- 50 soal Menengah
- 40 soal Lanjut
- 17 soal Ahli
- Total 6105 XP dasar
Unit 1
Masukan dan Keluaran
Membaca data dari pengguna, lalu menampilkannya dengan rapi. 7 soal.
- 1Pemula10 XP
Sapa Pengguna
Baca sebuah nama, lalu sapa orangnya.
Belum ada yang lolos
- 2Pemula10 XP
Gema di Gua
Ulangi satu kata tiga kali seperti gema di dalam gua.
Belum ada yang lolos
- 3Pemula10 XP
Kartu Pelajar
Cetak kartu pelajar dari nama, kelas, dan sekolah.
Belum ada yang lolos
- 4Pemula10 XP
Umur Tahun Depan
Baca nama dan umur, lalu sebutkan umurnya tahun depan.
Belum ada yang lolos
- 5Pemula10 XP
Tukar Isi Gelas
Tukar isi dua gelas, lalu tampilkan isinya.
Belum ada yang lolos
- 6Pemula15 XP
Bingkai Nama
Cetak nama di dalam bingkai bintang.
Belum ada yang lolos
- 7Pemula15 XP
Struk Warung
Susun struk belanja dari nama barang, harga, dan jumlahnya.
Belum ada yang lolos
Unit 2
Aritmatika Sehari-hari
Bagi, sisa bagi, persen, dan satuan yang sering kamu temui. 9 soal.
- 1Pemula15 XP
Luas Persegi Panjang
Hitung luas dari panjang dan lebar yang dibaca.
Belum ada yang lolos
- 2Pemula10 XP
Konversi Menit ke Jam
Ubah jumlah menit menjadi jam dan sisa menit.
Belum ada yang lolos
- 3Pemula10 XP
Bagi Kelereng
Bagi kelereng sama rata ke teman-teman, lalu hitung sisanya.
Belum ada yang lolos
- 4Pemula10 XP
Uang Kembalian
Hitung uang kembalian dari harga dan uang yang dibayarkan.
Belum ada yang lolos
- 5Pemula15 XP
Celsius ke Fahrenheit
Ubah suhu dari derajat Celsius ke Fahrenheit.
Belum ada yang lolos
- 6Pemula15 XP
Rata-rata Tiga Nilai
Hitung rata-rata tiga nilai ulangan dengan dua angka desimal.
Belum ada yang lolos
- 7Pemula20 XP
Jam Digital
Ubah jumlah detik menjadi tampilan jam digital JJ:MM:DD.
Belum ada yang lolos
- 8Pemula15 XP
Harga Setelah Diskon
Hitung potongan dan harga akhir dari persentase diskon.
Belum ada yang lolos
- 9Pemula20 XP
Waktu Tempuh Mudik
Hitung lama perjalanan dari jarak dan kecepatan rata-rata.
Belum ada yang lolos
Unit 3
Percabangan
Program yang memilih jalan sesuai keadaan. 9 soal.
- 1Pemula10 XP
Boleh Naik Wahana?
Tentukan apakah seorang anak cukup tinggi untuk naik wahana.
Belum ada yang lolos
- 2Pemula15 XP
Ganjil atau Genap
Tentukan sebuah bilangan termasuk ganjil atau genap.
Belum ada yang lolos
- 3Pemula15 XP
Kategori Nilai Ujian
Tentukan huruf mutu dari nilai ujian 0 sampai 100.
Belum ada yang lolos
- 4Pemula20 XP
Kuadran Titik
Tentukan letak sebuah titik pada bidang koordinat.
Belum ada yang lolos
- 5Menengah20 XP
Nilai Terbesar
Cari bilangan terbesar dari tiga masukan.
Belum ada yang lolos
- 6Menengah25 XP
Tahun Kabisat
Periksa apakah sebuah tahun termasuk tahun kabisat.
Belum ada yang lolos
- 7Menengah30 XP
Jenis Segitiga
Tentukan jenis segitiga dari panjang ketiga sisinya.
Belum ada yang lolos
- 8Menengah30 XP
Tarif Parkir Mal
Hitung biaya parkir dari lama parkir dalam menit.
Belum ada yang lolos
- 9Menengah30 XP
Jam di Tiga Zona Waktu
Ubah jam WIB menjadi WITA dan WIT.
Belum ada yang lolos
Unit 4
Perulangan
Mengulang langkah tanpa menulis kode berkali-kali. 10 soal.
- 1Pemula10 XP
Hitung Mundur Roket
Hitung mundur dari N sampai 1, lalu luncurkan roketnya.
Belum ada yang lolos
- 2Pemula20 XP
Jumlah 1 sampai N
Jumlahkan semua bilangan dari satu sampai N.
Belum ada yang lolos
- 3Pemula20 XP
Tabel Perkalian
Cetak tabel perkalian satu bilangan dari satu sampai sepuluh.
Belum ada yang lolos
- 4Pemula15 XP
Bilangan Ganjil sampai N
Tampilkan semua bilangan ganjil dari 1 sampai N dalam satu baris.
Belum ada yang lolos
- 5Menengah25 XP
Jumlah Digit
Jumlahkan semua digit dari sebuah bilangan yang sangat panjang.
Belum ada yang lolos
- 6Menengah25 XP
Faktorial
Hitung N faktorial, hasil kali semua bilangan dari 1 sampai N.
Belum ada yang lolos
- 7Menengah25 XP
FizzBuzz
Cetak 1 sampai N, ganti kelipatan 3 dan 5 dengan kata khusus.
Belum ada yang lolos
- 8Menengah30 XP
Rekap Nilai Kelas
Hitung rata-rata, nilai tertinggi, dan nilai terendah satu kelas.
Belum ada yang lolos
- 9Menengah30 XP
Barisan Collatz
Ikuti aturan Collatz sampai bilangannya menjadi 1.
Belum ada yang lolos
- 10Menengah30 XP
Menabung sampai Target
Hitung berapa minggu menabung sampai tabungan mencapai target.
Belum ada yang lolos
Unit 5
Pola dan Bentuk
Menggambar pola dengan perulangan bersarang. 10 soal.
- 1Pemula15 XP
Persegi Bintang
Cetak persegi dari tanda bintang berukuran N kali N.
Belum ada yang lolos
- 2Pemula20 XP
Segitiga Bintang
Cetak segitiga siku-siku dari tanda bintang setinggi N baris.
Belum ada yang lolos
- 3Pemula20 XP
Segitiga Terbalik
Cetak segitiga bintang yang mengecil dari N sampai satu.
Belum ada yang lolos
- 4Menengah25 XP
Segitiga Angka
Cetak segitiga yang setiap barisnya berisi angka 1 sampai nomor baris.
Belum ada yang lolos
- 5Menengah30 XP
Piramida Bintang
Cetak piramida bintang yang simetris di tengah.
Belum ada yang lolos
- 6Menengah30 XP
Papan Catur
Cetak papan catur berukuran N kali N dengan kotak hitam dan putih.
Belum ada yang lolos
- 7Menengah35 XP
Huruf X
Gambar huruf X dari bintang di dalam kotak N kali N.
Belum ada yang lolos
- 8Lanjut45 XP
Belah Ketupat
Cetak belah ketupat bintang dari piramida dan piramida terbalik.
Belum ada yang lolos
- 9Lanjut50 XP
Segitiga Pascal
Cetak N baris pertama segitiga Pascal.
Belum ada yang lolos
- 10Lanjut60 XP
Spiral Angka
Isi kotak N kali N dengan angka 1 sampai N kuadrat secara melingkar.
Belum ada yang lolos
Unit 6
Olah Teks
Membalik, memotong, dan menghitung huruf dalam kalimat. 12 soal.
- 1Pemula15 XP
Inisial Nama
Ubah nama lengkap menjadi inisialnya.
Belum ada yang lolos
- 2Pemula20 XP
Judul Rapi
Ubah setiap kata menjadi berhuruf besar di awal dan kecil di sisanya.
Belum ada yang lolos
- 3Menengah20 XP
Hitung Huruf Vokal
Hitung berapa huruf vokal di dalam sebuah kalimat.
Belum ada yang lolos
- 4Menengah25 XP
Kalimat Palindrom
Periksa apakah sebuah kalimat terbaca sama dari depan dan belakang.
Belum ada yang lolos
- 5Menengah25 XP
Balik Urutan Kata
Balik urutan kata dalam sebuah kalimat.
Belum ada yang lolos
- 6Menengah25 XP
Kata Terpanjang
Temukan kata paling panjang dalam sebuah kalimat.
Belum ada yang lolos
- 7Menengah30 XP
Cek Anagram
Periksa apakah dua kata tersusun dari huruf yang sama.
Belum ada yang lolos
- 8Menengah35 XP
Sandi Caesar
Geser setiap huruf sebanyak K langkah di alfabet.
Belum ada yang lolos
- 9Menengah35 XP
Huruf Paling Sering
Temukan huruf yang paling sering muncul dalam kalimat.
Belum ada yang lolos
- 10Menengah35 XP
Format Rupiah
Tulis nominal uang dengan titik pemisah ribuan.
Belum ada yang lolos
- 11Lanjut45 XP
Kompresi Teks
Ringkas huruf yang berulang menjadi huruf dan jumlahnya.
Belum ada yang lolos
- 12Lanjut50 XP
Rapikan Nomor HP
Periksa dan rapikan nomor ponsel Indonesia ke format +62.
Belum ada yang lolos
Unit 7
Daftar dan Array
Menyimpan banyak nilai, lalu mencari, menjumlah, dan menggeser isinya. 12 soal.
- 1Pemula15 XP
Balik Antrean
Tampilkan nomor antrean dari belakang ke depan.
Belum ada yang lolos
- 2Pemula20 XP
Jumlah Kumulatif
Hitung total tabungan yang terus bertambah setiap hari.
Belum ada yang lolos
- 3Menengah25 XP
Rentang Suhu Harian
Cari suhu tertinggi, terendah, dan selisih keduanya.
Belum ada yang lolos
- 4Menengah25 XP
Di Atas Rata-rata
Hitung berapa siswa yang nilainya di atas rata-rata kelas.
Belum ada yang lolos
- 5Menengah25 XP
Cari Nomor Absen
Temukan posisi pertama sebuah nomor di dalam daftar.
Belum ada yang lolos
- 6Menengah30 XP
Geser Nol ke Belakang
Pindahkan semua angka nol ke akhir daftar tanpa mengubah urutan lainnya.
Belum ada yang lolos
- 7Menengah30 XP
Hapus Duplikat
Buang angka yang muncul berulang, sisakan kemunculan pertamanya.
Belum ada yang lolos
- 8Menengah35 XP
Putar Daftar
Geser isi daftar ke kanan sebanyak K langkah secara melingkar.
Belum ada yang lolos
- 9Menengah35 XP
Transpose Matriks
Tukar baris dan kolom sebuah matriks.
Belum ada yang lolos
- 10Menengah30 XP
Selisih Diagonal
Hitung selisih jumlah dua diagonal pada matriks persegi.
Belum ada yang lolos
- 11Lanjut55 XP
Pasangan Jumlah Target
Hitung banyaknya pasangan angka yang jumlahnya sama dengan target.
Belum ada yang lolos
- 12Lanjut55 XP
Untung Terbesar
Tentukan keuntungan terbesar dari membeli lalu menjual sekali.
Belum ada yang lolos
Unit 8
Matematika dan Bilangan
Prima, FPB, biner, dan teka-teki angka ala olimpiade. 13 soal.
- 1Menengah25 XP
Cek Bilangan Prima
Periksa apakah sebuah bilangan termasuk bilangan prima.
Belum ada yang lolos
- 2Menengah35 XP
Daftar Bilangan Prima
Tampilkan semua bilangan prima dari 2 sampai N.
Belum ada yang lolos
- 3Menengah30 XP
FPB dan KPK
Hitung faktor persekutuan terbesar dan kelipatan persekutuan terkecil.
Belum ada yang lolos
- 4Menengah30 XP
Sederhanakan Pecahan
Ubah pecahan ke bentuk paling sederhana.
Belum ada yang lolos
- 5Menengah25 XP
Desimal ke Biner
Ubah bilangan desimal menjadi bilangan biner.
Belum ada yang lolos
- 6Menengah25 XP
Biner ke Desimal
Ubah bilangan biner menjadi bilangan desimal.
Belum ada yang lolos
- 7Menengah30 XP
Sempurna, Berlimpah, atau Kurang
Golongkan bilangan berdasarkan jumlah pembagi sejatinya.
Belum ada yang lolos
- 8Menengah30 XP
Bilangan Armstrong
Tampilkan bilangan yang sama dengan jumlah pangkat digit-digitnya.
Belum ada yang lolos
- 9Menengah35 XP
Angka Romawi
Ubah bilangan biasa menjadi angka Romawi.
Belum ada yang lolos
- 10Menengah35 XP
Romawi ke Angka
Baca angka Romawi dan ubah menjadi bilangan biasa.
Belum ada yang lolos
- 11Lanjut50 XP
Faktorisasi Prima
Uraikan bilangan menjadi perkalian faktor-faktor primanya.
Belum ada yang lolos
- 12Lanjut60 XP
Digit Terakhir Pangkat
Cari digit terakhir dari A pangkat B untuk B yang sangat besar.
Belum ada yang lolos
- 13Lanjut60 XP
Banyak Bilangan Prima
Hitung banyaknya bilangan prima sampai dua juta dengan cepat.
Belum ada yang lolos
Unit 9
Fungsi dan Rekursi
Memecah masalah besar menjadi masalah yang lebih kecil. 9 soal.
- 1Menengah30 XP
Akar Digital
Jumlahkan digit berulang kali sampai tersisa satu digit.
Belum ada yang lolos
- 2Lanjut50 XP
Pangkat Cepat
Hitung A pangkat B modulo M untuk B yang sangat besar.
Belum ada yang lolos
- 3Lanjut50 XP
Fibonacci Cepat
Hitung bilangan Fibonacci ke-N dengan rekursi yang mengingat hasilnya.
Belum ada yang lolos
- 4Lanjut55 XP
Menara Hanoi
Cetak langkah memindahkan menara cakram dari tiang A ke tiang C.
Belum ada yang lolos
- 5Lanjut55 XP
Memilih Tim Lomba
Hitung banyaknya cara memilih K orang dari N orang.
Belum ada yang lolos
- 6Lanjut60 XP
Himpunan Bagian
Tampilkan semua himpunan bagian dari bilangan 1 sampai N.
Belum ada yang lolos
- 7Lanjut65 XP
Semua Susunan Huruf
Tampilkan semua susunan huruf dari sebuah kata secara urut kamus.
Belum ada yang lolos
- 8Lanjut60 XP
Jumlah Mata Dadu
Hitung banyaknya cara mendapat jumlah tertentu dari beberapa dadu.
Belum ada yang lolos
- 9Ahli120 XP
N Ratu
Hitung banyaknya cara menempatkan N ratu catur yang tidak saling menyerang.
Belum ada yang lolos
Unit 10
Pencarian dan Pengurutan
Menyusun data dan menemukan isinya dengan cepat. 10 soal.
- 1Menengah25 XP
Urutkan Nilai
Urutkan nilai dari yang terkecil sampai terbesar.
Belum ada yang lolos
- 2Menengah30 XP
Nilai Tengah
Cari median dari sekumpulan bilangan.
Belum ada yang lolos
- 3Menengah30 XP
K Nilai Terbesar
Tampilkan K nilai terbesar dari yang paling besar.
Belum ada yang lolos
- 4Lanjut45 XP
Gabungkan Dua Daftar
Gabungkan dua daftar terurut menjadi satu daftar terurut.
Belum ada yang lolos
- 5Lanjut50 XP
Pencarian Biner
Jawab banyak pertanyaan posisi pada daftar terurut dengan cepat.
Belum ada yang lolos
- 6Lanjut50 XP
Hitung Tukar Bubble Sort
Hitung berapa kali bubble sort menukar elemen.
Belum ada yang lolos
- 7Lanjut50 XP
Papan Skor Lomba
Susun papan skor dengan peringkat yang sama untuk skor yang sama.
Belum ada yang lolos
- 8Lanjut65 XP
Gabung Jadwal Rapat
Gabungkan jadwal yang saling bertumpuk menjadi blok waktu yang terpisah.
Belum ada yang lolos
- 9Lanjut50 XP
Akar Kuadrat Bulat
Hitung akar kuadrat dibulatkan ke bawah tanpa kesalahan pembulatan.
Belum ada yang lolos
- 10Ahli110 XP
Banyak Inversi
Hitung pasangan yang urutannya terbalik untuk data yang besar.
Belum ada yang lolos
Unit 11
Struktur Data
Tumpukan, antrean, dan kamus untuk data yang terus berubah. 10 soal.
- 1Menengah35 XP
Huruf Unik Pertama
Temukan huruf pertama yang hanya muncul satu kali.
Belum ada yang lolos
- 2Menengah40 XP
Kata Terfavorit
Hitung kemunculan setiap kata dan urutkan dari yang paling sering.
Belum ada yang lolos
- 3Lanjut45 XP
Kurung Seimbang
Periksa apakah semua tanda kurung berpasangan dengan benar.
Belum ada yang lolos
- 4Lanjut50 XP
Antrean Loket
Layani antrean loket sesuai urutan datang.
Belum ada yang lolos
- 5Lanjut45 XP
Buku Telepon
Simpan, cari, dan hapus nomor telepon dengan cepat.
Belum ada yang lolos
- 6Lanjut55 XP
Tombol Undo
Tiru editor teks yang bisa membatalkan perubahan terakhir.
Belum ada yang lolos
- 7Lanjut60 XP
Stok Gudang
Catat barang masuk dan keluar, lalu tampilkan sisa stok.
Belum ada yang lolos
- 8Lanjut65 XP
Kalkulator Postfix
Hitung ekspresi matematika yang ditulis dalam notasi postfix.
Belum ada yang lolos
- 9Ahli100 XP
Hari Lebih Hangat
Untuk setiap hari, hitung berapa hari lagi suhunya lebih hangat.
Belum ada yang lolos
- 10Ahli110 XP
Antrean IGD
Layani pasien IGD berdasarkan tingkat kegawatan, bukan urutan datang.
Belum ada yang lolos
Unit 12
Simulasi dan Greedy
Meniru kejadian nyata dan memilih langkah terbaik saat itu juga. 9 soal.
- 1Menengah30 XP
Lampu Lalu Lintas
Tentukan warna lampu lalu lintas setelah sekian detik.
Belum ada yang lolos
- 2Menengah35 XP
Ganjil Genap Jakarta
Tentukan mobil mana yang boleh melintas pada aturan ganjil genap.
Belum ada yang lolos
- 3Menengah40 XP
Pecahan Uang Kembalian
Berikan kembalian dengan jumlah lembar dan koin sesedikit mungkin.
Belum ada yang lolos
- 4Lanjut45 XP
Robot Penjelajah
Ikuti perintah gerak robot dan catat jarak terjauhnya dari titik awal.
Belum ada yang lolos
- 5Lanjut50 XP
Kapasitas Angkot
Hitung penumpang yang tertolak karena angkot penuh.
Belum ada yang lolos
- 6Lanjut60 XP
Kegiatan Terbanyak
Pilih sebanyak mungkin kegiatan yang tidak bertabrakan.
Belum ada yang lolos
- 7Lanjut65 XP
Ransel Pendaki
Isi ransel dengan perbekalan bernilai setinggi mungkin, boleh dipotong.
Belum ada yang lolos
- 8Lanjut60 XP
Antrean Kasir Minimarket
Hitung kapan setiap pembeli selesai dilayani dan total waktu menunggunya.
Belum ada yang lolos
- 9Lanjut60 XP
Ular Tangga
Jalankan permainan ular tangga dan tentukan pemenangnya.
Belum ada yang lolos
Unit 13
Pemrograman Dinamis
Menyimpan jawaban kecil supaya soal besar terjawab cepat. 10 soal.
- 1Lanjut50 XP
Cara Naik Tangga
Hitung banyaknya cara menaiki N anak tangga satu atau dua langkah sekaligus.
Belum ada yang lolos
- 2Lanjut55 XP
Untung Beruntun Terbesar
Cari rangkaian hari berturut-turut dengan total untung terbesar.
Belum ada yang lolos
- 3Lanjut70 XP
Jalan ke Sekolah
Hitung banyaknya rute dari rumah ke sekolah yang menghindari jalan ditutup.
Belum ada yang lolos
- 4Ahli110 XP
Partisi Bilangan
Hitung banyaknya cara menulis N sebagai jumlah bilangan bulat positif.
Belum ada yang lolos
- 5Ahli100 XP
Koin Paling Sedikit
Tukar uang dengan koin sesedikit mungkin untuk pecahan sembarang.
Belum ada yang lolos
- 6Ahli110 XP
Banyak Cara Tukar Koin
Hitung banyaknya kombinasi koin yang membentuk jumlah tertentu.
Belum ada yang lolos
- 7Ahli130 XP
Ransel Petualang
Pilih barang utuh yang paling bernilai tanpa melebihi daya tampung ransel.
Belum ada yang lolos
- 8Ahli120 XP
Kesamaan Dua Teks
Hitung panjang subbarisan bersama terpanjang dari dua teks.
Belum ada yang lolos
- 9Ahli130 XP
Jarak Ketik
Hitung suntingan paling sedikit untuk mengubah satu kata menjadi kata lain.
Belum ada yang lolos
- 10Ahli120 XP
Barisan Naik Terpanjang
Cari panjang subbarisan naik terpanjang untuk data yang besar.
Belum ada yang lolos
Unit 14
Grid dan Graf
Menjelajah peta, labirin, dan jaringan antarkota. 8 soal.
- 1Lanjut65 XP
Isi Warna Peta
Warnai ulang satu wilayah peta seperti alat ember cat.
Belum ada yang lolos
- 2Lanjut70 XP
Kabar Berantai
Hitung berapa hari sampai sebuah kabar sampai ke semua orang.
Belum ada yang lolos
- 3Ahli100 XP
Hitung Pulau
Hitung banyaknya pulau dan luas pulau terbesar di peta.
Belum ada yang lolos
- 4Ahli110 XP
Keluar dari Labirin
Cari jumlah langkah paling sedikit untuk keluar dari labirin.
Belum ada yang lolos
- 5Ahli110 XP
Langkah Kuda
Hitung langkah paling sedikit bagi kuda catur untuk mencapai kotak tujuan.
Belum ada yang lolos
- 6Ahli100 XP
Lingkaran Pertemanan
Hitung banyaknya kelompok pertemanan dan ukuran kelompok terbesar.
Belum ada yang lolos
- 7Ahli140 XP
Rute Terpendek Antarkota
Cari jarak tempuh terpendek antara dua kota dengan algoritma Dijkstra.
Belum ada yang lolos
- 8Ahli140 XP
Urutan Mata Kuliah
Susun urutan mengambil mata kuliah yang memenuhi semua prasyarat.
Belum ada yang lolos
Seperti ujian, tapi dengan umpan balik seketika
Diperiksa otomatis
Kirim jawaban, lalu kodenya dijalankan dengan beberapa masukan berbeda. Hasil setiap uji langsung terlihat.
Uji tersembunyi
Sebagian masukan dirahasiakan, jadi jawabanmu harus benar untuk semua kasus, termasuk angka nol dan data yang besar.
Soal harian, XP ganda
Setiap hari ada satu soal pilihan yang pas dengan posisimu di jalur. Selesaikan hari itu juga untuk XP dua kali lipat.
Liga mingguan
Papan peringkat dimulai dari nol setiap Senin, jadi pendatang baru pun bisa langsung bersaing di puncak.
Lencana dan level
Kumpulkan lencana untuk streak, soal tingkat Ahli, dan jawaban yang lolos pada kiriman pertama.
Petunjuk dan pembahasan
Buka petunjuk bertahap saat buntu. Setelah lolos, bandingkan caramu dengan jawaban dalam beberapa bahasa.
Pelajari dulu materinya
Kerjakan soal pertamamu
Soal pertama cuma minta menyapa pengguna. Empat uji, sepuluh XP, dan kamu resmi mulai mengumpulkan lencana.
Buka Tantangan