Pengantar Tantangan Bebras Indonesia adalah kompetisi yang dilaksanakan secara online dan serentak dengan memberikan soal-soal yang telah dipersiapkan dalam Workshop Bebras Internasional, pada periode bebras week di minggu kedua bulan November. Tantangan Bebras Indonesia dibagi dalam 3 kategori, yaitu: 1. Siaga, untuk siswa SD dan yang sederajat 2. Penggalang, untuk siswa SMP dan yang sederajat 3. Penegak, untuk siswa SMA dan yang sederajat. Untuk kategori Siaga (SD) diberikan 10 soal yang harus diselesaikan dalam waktu 40 menit. Untuk kategori Penggalang (SMP) dan Penagak (SMA) masing-masing diberikan 12 soal yang harus diselesaikan dalam waktu 45 menit. Tantangan Bebras Indonesia 2017 dapat berjalan lancar berkat dukungan penuh dari GDP Labs yang menyediakan dan mengelola sebagai sistem aplikasi untuk lomba online. Selain dari itu juga LAPI Divusi yang membantu mengelola situs Selain dari itu para Koordinator Bebras Biro dan tim yang tersebar di 33 perguruan tinggi di seluruh Indonesia yang langsung berhubungan dengan para siswa dalam menyelenggarakan Tantangan Bebras Indonesia 2017. Penyiapan soal-soal dan pengelolaan Tantangan Bebras Indonesia 2017 dilaksanakan oleh Tim Olimpiade Komputer Indonesia (TOKI), yaitu: Inggriani (ITB), Adi Mulyanto (ITB), Suryana Setiawan (UI), Julio Adisantoso (IPB), Rully Soelaiman (ITS). Yudhi Purwananto (ITS), Yugo K. Isal (UI), dan Fauzan Joko Sularto (UPJ). Penyiapan soal juga dibantu oleh Mewati Ayub (UKM), Cecilia Nugraheni dan Vania Natalia (Unpar), serta penyiapan buku ini dibantu oleh Inez Perera, dan Rana R. Natawigena. Bahan belajar Computational Thinking Tantangan Bebras Indonesia 2017 ini dibagi dalam tiga buku sesuai kategori, yaitu buku untuk Tingkat SD (Siaga), Tingkat SMP (Penggalang), dan Tingkat SMA (Penegak). Karya ini dilisensikan di bawah lisensi Creative Commons Attribution-Non Commercial- No Derivatives 4.0 International (CC BY-NC-SA 4.0) Hal ini berarti Anda bebas untuk menggunakan dan mendistribusikan buku ini, dengan ketentuan: - Attribution: Apabila Anda menggunakan materi-materi pada buku ini, Anda harus memberikan kredit dengan mencantumkan sumber dari materi yang Anda gunakan. Non Commercial: Anda tidak boleh menggunakan materi ini untuk keperluan komersial, seperti menjual ulang buku ini. ShareAlike: Apabila Anda mengubah atau membuat turunan dari materi-materi pada buku ini, Anda harus menyebarluaskan kontribusi Anda di bawah lisensi yang sama dengan materi asli. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 1
Computational Thinking Kemampuan berpikir kreatif, kritis dan komunikasi serta kolaborasi adalah kemampuan yang paling penting dalam (21st century learning) pembelajaran di abad kedua-puluh-satu, di antara kemampuan- kemampuan lainnya seperti membaca, matematik, sains. Siswa zaman sekarang perlu untuk mengembangkan keterampilan berpikir, menguasai pengetahuan tentang konten dari persoalan yang dihadapi (content knowledge), dan mempunyai kompetensi sosial dan emosional untuk mengarungi kehidupan dan lingkungan kerja yang semakin kompleks. Di bidang "Computing" (diterjemahkan ke dalam bahasa Indonesia menjadi "Informatika"), kemampuan berpikir yang perlu dikuasai sejak pendidikan dasar adalah "Computational Thinking" (CT). CT adalah proses berpikir untuk memformulasikan persoalan dan solusinya, sehingga solusi tersebut secara efektif dilaksanakan oleh sebuah agen pemroses informasi ("komputer", robot, atau manusia). CT adalah sebuah metoda dan proses berpikir untuk penyelesaian persoalan dengan menerapkan: Dekomposisi dan formulasi persoalan, sedemikian rupa sehingga dapat diselesaikan dengan cepat dan efisien serta optimal dengan menggunakan komputer sebagai alat bantu; Organisasi dan analisis data secara logis; Representasi data melalui abstraksi dalam bentuk model, dan melakukan simulasi; Otomasi solusi melalui berpikir algoritmik (langkah-langkah yang terurut); Identifikasi, analisis, dan implementasi solusi yang mungkin dengan tujuan langkah dan sumberdaya yang efisien dan efektif; Pengenalan pola persoalan, generalisasi serta mentransfer proses penyelesaian persoalan ke sekumpulan persoalan sejenis. CT adalah sebuah cara berpikir untuk memecahkan persoalan, merancang sistem, memahami perilaku manusia. CT melandasi konsep informatika. Di dunia saat ini dimana komputer ada di mana-mana untuk membantu berbagai segi kehidupan, CT harus menjadi dasar bagaimana seseorang berpikir dan memahami dunia dengan persoalan-persoalannya yang semakin kompleks. CT berarti berpikir untuk menciptakan dan menggunakan beberapa tingkatan abstraksi, mulai memahami persoalan sehingga mengusulkan pemecahan solusi yang efektif, efisien, "fair" dan aman. CT berarti memahami konsekuensi dari skala persoalan dan kompleksitasnya, tak hanya demi efisiensi, tetapi juga untuk alasan ekonomis dan sosial. Di negara maju, "Computer Science" (yang di Indonesia diterjemahkan sebagai "Informatika") sudah mulai diajarkan sejak usia dini di tingkat pendidikan dasar, dengan materi dan kegiatan yang dirancang dengan mengacu ke kerangka kurikulum yang disusun oleh persatuan guru-guru, asosiasi profesi informatika, perusahaan terkemuka di bidang informatika dan TIK, serta organisasi-organisasi nirlaba yang peduli terhadap perlunya edukasi tentang informatika sejak usia dini Kerangka kurikulum Informatika tersebut mendefinisikan lima bidang pengetahuan yaitu: Sistem Komputer (CE), Jaringan Komputer (NW), Analisis Data (DA), Algoritma dan Pemrograman (AP), dan Aspek Sosial dari pemanfaatan Informatika (SOC). Selain pengetahuan, juga didefinisikan praktek-praktek komputasi untuk mengemas pengetahuan dan memraktekkannya, yaitu: pembinaan menumbuhkan budaya komputasi, menciptakan artifak, berkolaborasi untuk mewujudkan suatu produk TIK, menguji dan memperbaiki/ menyempurnakan artefak TIK, mengenali dan mendefinisikan problema-problema komputasi, berkomunikasi tentang komputasi, dan mengembangkan serta menggunakan abstraksi. Gambar 1. Hubungan Computational Thinking, Informatika dan TIK Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 2
Bagaimana Belajar Computational Thinking? Berpikir itu dapat dipelajari dan diasah dengan berlatih, serta mengkonstruksi pola pikir berdasarkan pengalaman. Computational Thinking juga dapat dipelajari dengan cara berlatih menyelesaikan persoalan-persoalan yang terkait komputasi, melalui persoalan sehari-hari. Lewat latihan-latihan yang menarik, siswa menerapkan teknik yang cocok (dekomposisi, abstraksi, pengenalan pola, representasi data, algoritmik) untuk mendapatkan solusi. Setelah latihan, siswa diharapkan melakukan refleksi serta mengkonstruksi pengetahuan berpikir, kemudian membentuk pola berpikir komputasional, yang semakin lama semakin tajam, cepat, efisien, dan optimal. Apa perbedaan ICT/TIK (Teknologi Informasi dan Komunikasi) dengan Informatika? Sejalan dengan itu, ICT (Information and Communication Technology, dalam bahasa Indonesia disebut Teknologi Informasi dan Komunikasi/TIK) mulai dibedakan dengan Informatika. TIK mengarah ke penggunaan teknologi dan perangkat/gadget, sedangkan Informatika mengarah ke keilmuan dan desain produk-produk informatika baik yang nyata (piranti pintar), maupun yang abstrak seperti program aplikasi, dan algoritma. lebih mengarah ke penggunaan teknologi dan perangkat/gadget, sedangkan Kemampuan TIK Informatika mengarah ke keilmuan komputasinya. Penggunaan TIK yang dimaksud bukan hanya ketrampilan menggunakan gadget dan aplikasinya, tetapi juga kemampuan untuk menggunakan dan memanfaatkan konten dengan bijak. Agar bangsa Indonesia mampu bersaing dengan negara lain, anak Indonesia tidak cukup menjadi pengguna teknologi saja, melainkan harus lebih kreatif dan inovatif untuk menciptakan produk-produk TIK. Untuk ini, siswa perlu mempelajari informatika. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 3
Tantangan Bebras (Bebras Computational Thinking Challenge) Situs: Bebras challenge (semula adalah Algoritmic Challenge kemudian menjadi Computational Thinking Challenge), diinisiasi oleh Prof. Valentina Dagiene dari Lithuania sejak tahun 2004, adalah kompetisi yang diadakan tahunan bagi siswa berumur 5 s.d. 18 tahun dan sudah diikuti oleh sekitar 1.3 juta siswa yang berasal dari 50 negara. Komunitas Bebras sebagian besar adalah para pembina IOI seperti halnya Indonesia, adalah sekumpulan akademisi yang peduli ke pendidikan informatika bagi siswa sekolah dasar dan menengah. Bebras mengikuti perkembangan CT, lewat "challenge" atau tantangan yang diberikan untuk problem solving terkait informatika untuk kehidupan sehari-hari, yang disajikan secara menarik dan lucu. Lewat Tantangan Bebras, siswa diajak "membangun" ketrampilan berpikir untuk menyelesaikan persoalan, yaitu melalui pendekatan constructionism yang diperkenalkan oleh Seimort Papert dari MIT. Siswa diajak belajar dengan mencoba menjawab tantangan. Jadi, tantangan Bebras bukan lomba sekedar untuk menang tetapi yang lebih penting adalah untuk belajar berpikir dan menyelesaikan persoalan. Kepada peserta yang meraih peringkat tinggi, akan diberikan sertifikat. Tujuan Tantangan Bebras: Memotivasi siswa Untuk mulai tertarik ke topik-topik informatika dan memecahkan persoalan dengan menggunakan informatika Men-stimulasi minat siswa ke informatika Mendorong siswa untuk menggunakan "TIK" dengan lebih intensif dan kreatif dalam aktivitas belajarnya Menyemangati siswa untuk berpikir lebih dalam dari pada sekedar ke komputer/alatnya dan TIK. Tantangan bebras diselenggarakan sekali setahun pada saat hampir bersamaan di seluruh dunia, sepanjang pekan Bebras, yang ditetapkan pada minggu pertama bulan November. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 4
Bebras Indonesia Situs: Bebras dikelola oleh pembina Pusat/Nasional TOKI. Indonesia mulai bergabung ke komunitas internasional bebras, dan untuk pertama kali mengadakan Tantangan Bebras dalam bahasa Indonesia pada tahun 2016. Tantangan diselenggarakan secara online digelar di 12 kota dengan 1553 peserta yang terdiri dari 193 peserta kategori Siaga (SD), 198 peserta kategori Penggalang (SMP), dan 968 peserta kategori Penegak (SMA/SMK/MAN) yang berasal dari 125 Sekolah (23 SD, 27 SMP, 75 SMA). Penyelenggaraan Tantangan Bebras dikoordinasi oleh Perguruan Tinggi yang menjadi Mitra bebras Indonesia, dan dapat diselenggarakan di Perguruan Tinggi Koordinator atau di sekolah. Peserta ada yang menggunakan komputer, tablet, bahkan handphone. Bagaimana Berpartisipasi pada Tantangan Bebras 2018? Pembina Bebras Indonesia bekerja sama dengan Perguruan Tinggi mitra dengan dukungan supporter. Perguruan Tinggi (diutamakan Program Studi Informatika dan Matematika) yang berminat untuk menjadi mitra Bebras akan dihubungkan dengan Perguruan Tinggi Pembina Utama TOKI, dan sekolah yang berminat untuk mengikut-sertakan siswa dapat menghubungi Perguruan Tinggi Mitra Bebras terdekat. Sebagai bersiapan, Pembina Bebras tingkat Nasional juga bersedia menjadi narasumber untuk pelatihan dosen/guru yang akan akan bergabung. Silahkan kontak via email ke info@bebras.or.id. Contoh-contoh soal dan latihan online dalam bahasa Indonesia dapat diakses di Untuk Latihan di arena Bebras Indonesia Siapapun dapat berlatih secara mandiri di situs dengan langkah: 1. Akses "Create New Account", atau dari: 2. Setelah mengisi data diri secara lengkap dan password benar, anda menekan "Create New Account", kemudian anda harus membuka email untuk konfirmasi. 3. Buka email anda 4. Klik link yang diberikan oleh Olympia ke email anda 5. Anda melakukan "Enroll" ke Bebras Challenge. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 5
Negara-Negara Kontributor Setiap soal di buku ini diberi bendera yang menandakan negara asal penyusun soal. Namun banyak pihak yang terlibat dalam mengedit, menerjemahkan, dan menyediakan material tambahan. Bebras Indonesia berterima kasih kepada komunitas Bebras internasional karena memungkinkan kami untuk menggunakan soal-soal yang telah mereka kembangkan. Bendera Negara Kontributor Soal-Soal pada Buku SMA Tantangan Bebras 2017 Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 6
Daftar Soal o Kurung o Kode Kartu o Kiri Kanan o Upah Membantu o Senyum o Perjalanan Arabot o Klub Berbagi Buku o Penyusup o Robot Pengumpul Permen o Lampu Kantor o Pezzeria Biberia o Keluar dari Labirin o Terowongan o Lampu Merah Biru o Warung Soda o Memindahkan Dadu o Kota Penuh Putaran o Robot o Tandems o KRL (halaman 8) (halaman 10) (halaman 11) (halaman 12) (halaman 14) (halaman 15) (halaman 17) (halaman 19) (halaman 20) (halaman 22) (halaman 23) (halaman 25) (halaman 27) (halaman 29) (halaman 31) (halaman 33) (halaman 35) (halaman 36) (halaman 38) (halaman 40) Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 7
Kurung PENEGAK (SMA) I-2017-AT-06 Sebuah toko permata membuat gelang yang tersusun atas bentuk-bentuk hiasan yang mirip tanda kurung. Ada dua bentuk yang berbeda: P-1 dan, P-2. Satu pasangan bentuk adalah dua bentuk yang sama yang diposisikan berhadapan: satu menghadap ke kanan (seperti tanda kurung buka) dan satu berikutnya menghadap ke kiri (Seperti tanda kurung tutup). Ada dua kemungkinan pasangan seperti pada gambar berikut, dan selanjutnya pasangan tersebut dinamakan pasangan P-1 dan pasangan P-2). atau Proses pembuatan gelang dimulai dari sebuah pasangan apapun (P-1 atau P-2). Pasangan demi pasangan berikutnya disisipkan secara bersamaan pada suatu titik penyisipan: di kiri, atau di tengah, atau di kanan, dari suatu pasangan yang sudah ada pada gelang. Untuk memperjelasnya berikut ini ada sejumlah contoh. Contoh ini dimulai dengan pasangan P-1. Pasangan P-1 kedua disisipkan di antara yang pertama, dan pasangan P-1 ketiga disisipkan di sebelah kiri dari P-1 yang pertama. Contoh kedua dimulai dari pasangan P-1, kemudian disisipkan sebuah pasangan P-2 di tengah pasangan P-1 yang pertama, terakhir disisipkan pasangan P-1 di tengah pasangan P-2. Contoh ketiga dimulai dari pasangan P-2. Pasangan P-1 pertama disisipkan di tengahnya, dan pasangan P-1 kedua disisipkan sebelah kiri pasangan P-1 pertama, tapi masih di dalam P-2. Terakhir pasangan P-1 ketiga disisipkan di tengah pasangan P-1 kedua. Tantangan: Manakah dari gelang-gelang berikut ini yang dibuat dengan cara yang telah diuraikan di atas? Pilihan Jawaban: a) b) c) d) Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 8
Jawaban: Jawaban yang tepat adalah d) Gelang mulai dibuat dengan dua kurung, menaruh sepasang di antaranya, kemudian menaruh pasangan lain di antara pasangan yang kedua. Semua gelang yang lain tidak dibentuk berdasarkan cara yang telah dijelaskan: A. Posisi 3 salah: sisi kanan dari hiasan 2 ditempatkan sebelum sisi kanan dari hiasan 1. B. Posisi 1 salah: dimulai dengan sisi kanan hiasan, seharusnya dari sisi kiri. C. Posisi 2 salah: susunan terdiri dari 3 sisi kiri dari satu hiasan dan kemudian 3 sisi kanan dari hiasan yang lain, jadi tidak disusun secara berpasangan. Ini Informatika! Aturan untuk membuat gelang yang dijelaskan pada tantangan ini sama persis seperti aturan menyusun ekspresi kurung. Ilmuwan/Ahli Informatika menyebut ekspresi yang benar dengan "formula-benar" ("well formed formula"). Ekspresi yang mengandung kesalahan disebut "formula-salah". Suatu ekspresi yang merupakan "formula-benar" juga disebut "benar secara sintaks", yang berarti ekspresi taat pada aturan sintaks (aturan tata bahasa) yang ditentukan. Walaupun kesalahan sintaks mungkin akan sulit dikenali pada sebuah ekspresi yang rumit, kesalahan sintaks secara umum lebih mudah ditemukan dibandingkan "kesalahan semantik", yaitu kesalahan logika yang dibuat oleh pemrogram. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 9
Kode Kartu PENEGAK (SMA) I-2017-CZ-02 Terdapat lima kartu yang diletakkan berderet. Setiap kartu berisikan lambang hati dalam jumlah tertentu, dari kiri ke kanan secara berurutan adalah 16, 8, 4, 2, dan 1 hati. Di bagian bawah kartu terdapat tulisan angka 0 atau 1. Angka 1 dituliskan jika kartu diatasnya terbuka (dan terlihat gambar hatinya!). Angka 0 dituliskan jika kartu tertutup. Kartu-kartu dapat digunakan untuk membangkitkan kode-kode untuk angka-angka. Sebagai contoh, terdapat 9 gambar hati yang dapat terlihat pada gambar berikut ini, sehingga kode untuk angka 9 adalah 01001. 0 1 0 0 1 Tantangan: Temukan kode untuk 26 gambar hati. Jawaban: Jawaban yang benar adalah 11010. Ini Informatika! Hati ditempatkan di kartu sehingga hanya ada satu hati pada kartu sebelah kanan, dan setiap kartu di sebelah kiri sesudahnya mengandung dua kali hati. Maka, akan ada 1, 2, 4, 8, dan 16 hati saat dibaca dari kiri ke kanan. Dapat dibuktikan bahwa setiap angka dari 0 s.d. 31 dapat direpresentasikan dengan kombinasi tertentu menggunakan kartu tsb. Kita juga dapat melakukan perhitungan dengan menggunakan kartu-kartu ini. Pengaturan dari hati dipakai dalam sistem bilangan biner yang hanya menggunakan 0 dan 1, yang dipakai komputer untuk menyimpan informasi. Kita juga dapat mengkode teks, gambar, video, musik dengan hanya menggunakan bilangan 0 dan 1. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 10
Kiri Kanan PENEGAK (SMA) I-2017-BE-03a Berang-berang menciptakan sistem pengkodean kata yang disebut kode berang-berang, dengan memakai peta di atas: ▪ Setiap pohon di taman diberi nama dengan satu huruf. ▪ Kode untuk setiap huruf ditemukan dengan cara mencapai pohon tersebut dengan berbelok kiri (L) dan kanan (R). ▪ Kode untuk setiap huruf selalu dimulai dari pintu masuk taman (bertanda panah). Contoh-contoh : ▪ Contoh 1: Kode untuk A adalah LL karena untuk mencapai pohon A dari pintu masuk taman kamu harus berbelok kiri dua kali. ▪ Contoh 2: Kode untuk kata BAR adalah LRLLLR. Tantangan: Berapa banyak huruf dalam kode berang-berang tersebut untuk kata BEAR? (Tuliskan angkanya!) Jawaban: Jawaban yang benar adalah 9. Tabel berikut ini berisi kode kiri/kanan untuk semua huruf: Sehingga BEAR akan dikode menjadi LRLLRRLLR yang terdiri dari 9 huruf. Ini Informatika! Jika suatu komputer mengganti huruf L dalam kode kiri/kanan dengan 0 dan huruf R dengan 1, maka kode kiri/kanan menjadi apa yang disebut kode biner. Peta untuk taman menjadi suatu struktur data komputer yang disebut pohon biner. Hal ini berarti rute yang panjang dan rumit dapat disimpan oleh komputer dengan sangat mudah menggunakan ruang yang sangat kecil. Hal menarik mengenai kode ini adalah bahwa tidak diperlukan koma atau pemisah. Cobalah mengubah kode (decode) jawaban untuk melihat bahwa kamu tidak perlu spasi untuk menunjukkan kode untuk setiap huruf cukup dan mulai dengan kode baru. Jenis kode seperti ini disebut prefix code. Hal ini berarti kode menjadi lebih singkat. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 11
Upah Membantu PENEGAK (SMA) I-2017-SI-05 Untuk mengisi liburannya selama 6 hari, Ana dan Bobi merencanakan tinggal di desa nenek. Kebetulan, di sana ada tiga petani A, B, dan C yang membutuhkan bantuan untuk menggarap sawahnya masing- masing. Mereka menawari Ana dan Bobi upah jika mau membantu mereka. Masing-masing petani tersebut memberikan penawaran yang berbeda: Petani A menawarkan 10 ribu rupiah buat masing-masing (Ana dan Bobi) setiap hari. Petani B hanya akan memberi Bobi sepuluh ribu rupiah pada hari pertama kemudian setiap berikutnya menaikkan sebesar 10 ribu menjadi 20 ribu, 30 ribu, dan seterusnya, sementara ia akan memberi Ana di hari pertama 100 ribu rupiah dan kemudian diturunkan 10 ribu rupiah setiap hari berikutnya menjadi 90 ribu, 80 ribu, dan seterusnya. Petani C tidak tertarik dibantu Bobi, sehingga ia hanya akan memberi 1 ribu rupiah di hari pertama saja dan tidak akan memberi apapun di hari berikutnya. Sementara untuk Ana, ia akan memberikan seribu rupiah pada hari pertama, lalu setiap hari berikutnya dua kali lipat sebelumnya. Jadi Ana akan mendapatkan seribu rupiah, 2 ribu rupiah, 4 ribu rupiah, 8 ribu rupiah dan seterusnya. Mereka berniat untuk melewati setiap hari masa liburnya di desa nenek dengan membantu petani, dan mereka berdua sudah berjanji untuk bekerja pada petani yang sama. Mengenai upah, mereka juga diam-diam sudah sepakat untuk membagi sama rata dari yang diperoleh berdua. Tantangan: Kepada petani yang mana mereka bekerja sehingga mendapat upah yang paling banyak ? Pilihan Jawaban: o o o o A B C A atau B Jawaban: Jawaban yang tepat adalah B. Perhitungan upah petani A sangat sederhana. Masing-masing mendapat upah 50 ribu per hari, sehingga masing-masing akan memperoleh 500 ribu rupiah selama 10 hari. Petani B lebih rumit perhitungannya: Bobi mendapat 10+20+30+40+50+60+70+80+90+100 Anna mendapat 100+90+80+70+60+50+40+30+21+10 Bagaimana mendapatkan hasil penjumlahannya? Pada hari pertama, keduanya memperoleh 110 rupiah, demikian juga 110 rupiah pada hari kedua ... Secara keseluruhan, selama 10 hari keduanya akan memperoleh 1100 rupiah, sehingga masing-masing akan mendapat 550. Hore! Petani C lebih sulit lagi. Ini hasil penjumlahan upah Ana dan Bobi: 1 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 = 2 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 = 4 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 = 8 + 8 + 16 . . wah ada pola, Mari abaikan sisanya, Akan berakhir dengan: 512 + 512 = 1024 Jika mereka membagi 1024 untuk mereka berdua, setiap anak akan memperoleh 512. Maka, jawabannya adalah Petani B Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 12
Ini Informatika! Ilmuwan/Ahli informatika seringkali melakukan perhitungan seperti yang dilakukan untuk pemecahan persoalan ini. Misalnya jika ingin menghitung waktu eksekusi dari sebuah algoritma (upah adalah analogi dari waktu eksekusi). Upah yang diperoleh adalah waktu eksekusi dari operasi yang diperlukan untuk suatu algoritma. Selain itu, perhatikan betapa efisien menjumlahkan upah petani B. Menjumlahkan semua angka, jumlahkan secara paralel dari depan dan belakang pada saat yang sama, dan membagi dua Pada kasus ini, kasus terakhir menguatirkan, karena jumlah operasi berlipat dua setiap hari, yang mencerminkan dua kali jika data bertambah. Kalau Ana dan Bobi mempunyai waktu 1 hari lebih, mereka berdua akan mendapatkan upah dengan upah Bobo ditambah kelipatan dari upah. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 13
Senyum PENEGAK (SMA) I-2017-DE-02 Berang-berang menemukan suatu alat untuk mendeteksi wajah tersenyum dengan kamera. Alat tersebut bekerja dengan 2 langkah: Tahap-1: transformasi foto wajah menjadi semacam "smiley" yang diberi dua titik dan garis yang menunjukkan posisi mata dan mulut. Tahap-2: deteksi apakah wajah tersenyum dengan mencocokkan gambar hasil tahap-1 dengan pola yang terdiri dari garis merah dan titik hijau. Wajah dideteksi sebagai wajah tersenyum, jika dan hanya jika gambarnya menyentuh semua titik hijau dan tidak menyentuh garis merah. Tantangan: Berapa gambar hasil tahap-1 sebagai berikut, yang dideteksi sebagai wajah tersenyum? Jawaban: Jawaban yang benar adalah 4. Penjelasan: Gambar yang ditandai dengan x terdeteksi sebagai senyum Ini Informatika! Ilmuwan/Ahli Informatika mengembangkan sistem yang dapat mengenali sesuatu (misalnya wajah manusia) pada foto, atau kamera yang selalu hidup untuk menangkap citra. Teknologi ini sekarang mengadopsi konsep yang disebut mesin pembelajar, atau bahkan deep learning. Teknologi ini juga memasukkan tahap pra pemrosesan citra, memodelkan, dan memakai aturan seperti yang diberikan contohnya pada tantangan ini. Adalah sangat penting bahwa pendekatan yang digunakan dalam latihan ini sangat disederhanakan, dan mempunyai beberapa kekurangan. Misalnya, empat wajah yang diberikan sebagai alternatif jawaban, hanya dua yang secara tepat merepresentasi senyum. Anda harus mengingat baik-baik, bahwa kelak, rancangan sistem pengenalan citra yang sebenarnya, tidak menghasilkan seperti ini. Robot passport checker rejects asian man's photo having closed eyes Research shows smartphone fingerprint scanners aren't as secure as we think they are Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 14
Perjalanan Arabot PENEGAK (SMA) I-2017-CZ-04C Arabot adalah sebuah robot yang diharapkan akan berjalan dari titik awal (A, B atau C) hingga stasiun pengisian batere. Dalam perjalanannya Arabot menelusuri jalur-jalur berdasarkan petunjuk arah berupa label yang tertera pada jalur yang sedang dilaluinya untuk memilih jalur berikutnya. Label arah bertuliskan L atau R. Label L akan menginstruksikan Arabot untuk belok ke kiri pada persimpangan berikut, sementara label R menginstruksikan untuk belok ke kanan. Gambar di atas adalah peta jalur-jalur tersebut. A, B, dan C adalah tiga kemungkinan titik awal dari mana Arabot akan memulai perjalanannya. Arabot dapat memulai dari A atau B atau C. Selama perjalanannya menuju stasiun pengisian, Arabot tidak boleh mampir di suatu titik awal manapun karena jika demikian maka Arabot akan segera dimatikan disitu. Tanda jalur dimana Arabot akan memilih jalur sesuai label yang tertera pada jalur sebelumnya. menyatakan stasiun tempat pengisian batere dan tanda menyatakan persimpangan Tantangan: Sayangnya, beberapa label ternyata sudah hilang dari peta. Keenam label yang hilang tersebut pada gambar ditunjukkan dengan kotak kosong dan diberi nomor 1 sampai dengan 6. Agar Arabot selalu tiba di tanda benar. Label dari kotak 1 hingga 6 secara berurutan adalah? , kamu diminta untuk mengisi kotak-kotak kosong itu dengan label-label (L atau R) yang Pilihan Jawaban: a) L, R, L, L, L, R b) L, R, R, L, L, R c) L, R, R, L, L, L d) L, R, R, L, R, R e) L, R, R, R, R, L f) L, R, L, R, R, L g) L, R, L, L, R, R h) L, L, R, R, L, L i) L, R, R, L, R, L j) R, L, R, L, L, R k) R, L, L, R, R, L Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 15
Jawaban: Jawaban yang benar adalah f) L, R, L, R, R, L. Ini Informatika! Sekumpulan aktivitas yang harus dikerjakan dengan urutan tertentu seringkali dikode seperti di atas ("A" ke..., "B" ke..., dan "C" ke...), yang kemudian ditransformasi ke struktur graf seperti pada gambar yang di bidang informatika disebut sebagai struktur data. Pada saat menelusuri sebuah jalur, Arabot membaca dan menginterpretasi instruksi, dan membaca label untuk menentukan jalan yang akan membawa ke persimpangan berikutnya, yang kemudian akan membawa ke instruksi berikutnya. Dengan cara inilah perangkat keras komputer berfungsi di perangkat elektronikanya. Tantangan ini memunculkan sekumpulan pertanyaan matematis menarik tentang sulitnya menentukan label, bahkan ada kemungkinan tidak dapat ditentukan, dan masih menjadi perhatian para peneliti di bidang algoritma dan kompleksitas komputasional. Situasi pada tantangan ini akan terpakai pada bidang komputasi biologi dan komputasional kedokteran. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 16
Klub Berbagi Buku PENEGAK (SMA) I-2017-IR-07 Ada tujuh (7) siswa yang gemar membaca buku dan mereka membentuk klub untuk berbagi buku. Jika ada satu buku baru diperoleh (dan dibaca) seorang siswa, kemudian ia akan meneruskan meminjamkan ke anggota klub lainnya dengan cara berikut. Tidak setiap siswa menjadi sahabat siswa lainnya, maka seorang siswa hanya meneruskan meminjamkan buku ke siswa yang bersahabat dengannya. Jika seorang siswa mempunyai beberapa sahabat, maka sahabat yang paling muda yang akan dipinjami terlebih dulu, yang belum pernah meminjam buku itu. Kalau semua sahabatnya sudah pernah meminjamnya, maka ia akan mengembalikan ke siswa yang sebelumnya meminjamkan buku itu kepadanya. Diagram berikut menunjukkan tujuh siswa idan garis-garis menunjukkan hubungan "sahabat" itu. Setiap simpul berisi informasi nama dan umur. Ben selesai membaca sebuah buku baru dan ingin berbagi dengan semua anggota klub dan selain Ben belum ada yang pernah membacanya. Siapa yang akan menjadi pembaca terakhir dari buku tersebut? Pilihan Jawaban: o Bill o Sara o Tom o Kim Jawaban: Jawaban yang benar adalah Kim. Ben meminjamkan bukunya ke Ted. Kemudian Ted memberikannya ke Anna. Anna mengoper bukunya ke Bill. Kemudian Bill meminjamkannya ke Tom. Tom mengembalikan bukunya ke Bill. Bill memberikannya kembali ke Anna. Anna meminjamkannya ke Sara. Sara kemudian mengembalikan bukunya ke Anna. Anna mengembalikannya ke Ted. Ted kemudian memberikan buku itu ke Kim. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 17
Ini Informatika! Kebanyakan dari data yang digunakan di bidang informatika saling berhubungan. Misalnya kehidupan sosial kita yang terbentuk dari jaringan elemen (orang) dan koneksi (persahabatan). Contoh lainnya adalah jaringan transportasi yang terdiri dari elemen (kota) dan koneksi (jalanan). Atau juga rantai makanan yang terdiri dari elemen (makhluk hidup) dan koneksi (produsen-konsumen). Jadi banyak segi kehidupan yang dapat dipandang sebagai "network" (jejaring). Untuk menggambarkan jejaring, Ilmuwan/Ahli Informatika menggunakan graf sebagai struktur data, yang menggambarkan rangkaian dari hubungan. Untuk menganalisis graf tersebut, ada bermacam- macam algoritma yang dapat dipakai mengevaluasi berbagai hal. Salah satu algoritma yang terkenal adalah Depth-First Search. Algoritma tersebut digunakan untuk mencari struktur data di grafik dalam urutan tertentu. Ini sangat berguna untuk menghitung komponen dalam grafik, misalnya ada berapa komponen grafik yang berhubungan. Depth-First dapat digunakan untuk mencari elemen yang terhubung dari suatu titik pangkal. Kalau elemen yang dicari sudah ditemukan, proses yang sama dapat diulangi untuk elemen yang lain. Cara melacak dalam sistem peminjaman buku dalam tantangan ini mirip dengan sistem pencarian Depth- First. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 18
Penyusup PENEGAK (SMA) I-2017-DE-03 Di Museum Bebras ada sistem pengamanan cerdas yang mampu mendeteksi penyusup. Penyusup adalah orang yang berhasil masuk ke museum tidak lewat pintu masuk. Setiap orang yang masuk atau keluar dari ruangan di monitor oleh sistem yang mendeteksi berapa orang pada setiap ruangan dan merekam datanya dalam sebuah tabel segera setelah satu atau beberapa pengunjung masuk, keluar atau berpindah ruangan. Mungkin saja beberapa orang masuk atau keluar satu atau beberapa ruangan pada saat yang sama. Tabel berikut menunjukkan data yang direkam sistem pengamanan cerdas dan gambar disampingnya menunjukkan denah ruangan di museum. Tantangan: Pada menit keberapa (pada jam 10 tersebut) sistem mendeteksi adanya seorang penyusup? Isi dengan bilangan bulat antara 00 sampai dengan 59. Jawaban: Jawaban yang tepat adalah 10:13. Polisi dipanggil pukul 10.13. Saat itu dua orang masuk Ruang 3, tetapi di ruang itu hanya ada satu orang sebelumnya (di Ruang 2). Jadi seseorang memasuki ruangan 3 dari luar museum tanpa menggunakan pintu masuk. Ini Informatika! Sistem keamanan yang bisa melacak jumlah orang dapat ditemukan di tempat-tempat seperti bandara, atau tempat penting lainnya. Kamera akan menangkap gambar pada setiap perioda tertentu. Program komputer mengevaluasi gambar dari kamera, mendeteksi orang, mencacah dan menghitungnya. Program-program ini menggunakan kecerdasan buatan (misalnya untuk mengenali manusia) dan juga aturan logis sederhana seperti dalam tugas ini untuk mendeteksi pelanggaran keamanan. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 19
Robot Pengumpul Permen PENEGAK (SMA) I-2017-CA-12 Robot Candy diprogram untuk mengumpulkan permen sebanyak mungkin yang terhampar di lantai yang terdiri dari petak-petak. Tugas tersebut dilakukan pada saat robot berjalan melalui petak demi petak lantai. Setiap petak di lantai sebagai tergambar di bawah ini memiliki 0, 1, 2 atau 3 permen. Robot Candy mulai dari petak S (untuk start) di kiri bawah dan berakhir di petak F (untuk finish) di kanan atas. Namun, Robot Candy memiliki keterbatasan: setiap kali berpindah, dia hanya bisa berpindah dari satu petak ke petak berikutnya di sebelah kanannya atau di sebelah atasnya. Tantangan Mengingat Robot Candy akan mengumpulkan permen sebanyak-banyaknya, berapa banyak permen yang dikumpulkan oleh Robot Candy? Pilihan jawaban: o 10 o 12 o 14 o 16 o 13 Jawaban: Jawaban yang benar adalah 14. Salah satu pendekatannya adalah mengisi tabel "terbaik" dari permen yang bisa dikumpulkan mengisi "sapuan diagonal" dari tabel. Awalnya kita punya 0 permen, jadi kita bisa memikirkan tabel sebagai berikut: Dimana elemen dicetak dengan huruf tebal adalah jumlah maksimal permen yang bisa kita capai di setiap sel. Dengan bergerak naik robot akan mendapatkan 3 permen, dan dengan bergerak ke kanan robot akan mendapatkan 0 permen, jadi kita bisa memperbarui tabel kita: Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 20
Perhatikan sel yang ada di sebelah kanan angka 3 yang dicetak tebal dan di atas angka 0 yang dicetak tebal. Berapakah jumlah maksimum permen yang bisa kita kumpulkan untuk sampai ke sel ini? Kita harus sampai ke sel ini setelah mengumpulkan 3, bukan 0, permen. Jadi, kita bisa berada di sel ini setelah mengumpulkan 4 permen. Melanjutkan dengan cara ini, kita dapat melihat bahwa jumlah maksimal permen yang bisa kita kumpulkan di dalam sebuah sel adalah jumlah permen dalam sel tersebut ditambah dan jumlah permen yang terbesar antara sel di sebelah kiri atas sel di bawahnya. Secara matematis hal ini dapat dinyatakan dengan: v (i, 0) = 0 v (0, j) = 0 v (i, j) = c (i, j) + max {v (i-1, j), v (i, j-1)} dimana v (i, j) adalah jumlah maksimum permen yang dapat dikumpulkan di sel (i, j), dan c (i, j) adalah jumlah permen dalam grid pada sel (i, j) pada awalnya. Jika kita ingin mengacu ke sel paling kiri dan paling bawah, kita perlu menambahkan kolom angka nol ke kiri dan deretan angka nol ke bagian bawah tabel. Dengan menerapkan hubungan ini, kita bisa mengisi sisa tabel sebagai berikut: dan oleh karena itu, kita bisa mengumpulkan 14 permen di sel F. Inilah Informatika! Menentukan solusi "terbaik" di antara serangkaian solusi yang mungkin adalah masalah yang sulit dan bermanfaat. Untuk masalah pengumpulan permen ini, kita bisa mencoba semua jalur yang mungkin, yang merupakan solusi brute force. Sayangnya, ada banyak sekali jalur: khususnya, untuk masalah ini, ada 70 jalur yang berbeda. Dalam kasus khusus ini, kita dapat mencoba untuk menemukan beberapa bagian tugas yang "layak" dan mencoba (dan berhasil) untuk menemukan solusi terbaik dari sana. Karena kotaknya relatif kecil, kita bisa mengurangi kemungkinan lain yang harus lebih buruk lagi. Solusi yang lebih efisien melibatkan pengisian tabel, seperti yang dijelaskan di atas, dengan menggunakan teknik yang disebut memoisasi dari dynamic programming recurrence. Artinya, setelah mendapatkan formula hubungan untuk solusi "terbaik" dari sel saat ini, berdasarkan sel ke kiri atau sel di bawah, kita melakukan 25 perhitungan, dalam hal ini, untuk menghitung jumlah maksimum dari permen tersedia, kita membangun solusi yang lebih besar dari kondisi awal. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 21
Lampu Kantor PENEGAK (SMA) I-2017-HU-09 Delapan bebras menempati ruang masing-masing di kantor. Saat di kantor, para bebras menyalakan lampu, dan mematikannya saat pergi. Atasan mereka memeriksa bebras yang hadir dengan melihat lampu. Gambar di bawah menunjukkan bahwa tidak semua bebras bekerja hari ini. Sang atasan membuat catatan bebras yang bekerja dan yang tidak bekerja, dengan menggunakan simbol-simbol untuk lampu menyala dan lampu mati yang berbeda, tanpa perlu tahu mana awal dan mana yang terakhir. Tantangan: Catatan mana yang sesuai dengan gambar di atas? PIlihan Jawaban: a) # & & & # # & # b) & # & & & # & # c) # & # # & & & & d) & & # & & # # & Jawaban: Jawaban yang tepat adalah d) & & # & & # # & Ini Informatika! Ilmuwan/Ahli informatika menyenangi bilangan biner {0, 1}, atau {off, on}. Satu digit biner merepresentasi dua keadaan. Untuk kasus ini, lampu "menyala" atau "mati". Ahli informatika seringkali merepresentasi menjadi 1 dan 0, tetapi simbol lainnya juga dapat dipakai. Tergantung kepada orang yang menentukannya. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 22
Pizzeria Biberia PENEGAK (SMA) I-2017-CH-03 Di kedai pizza Pizzeria Biberia, terdapat sebuah oven yang kecil sehingga hanya dapat digunakan untuk memanggang beberapa roti dan pizza dalam satu saat. Oven hanya dapat menampung sejumlah kombinasi roti dan pizza pada satu saat, sebagai berikut: Tiga Roti Satu Roti dan satu pizza besar Satu pizza kecil dan dua roti Waktu yang diperlukan untuk memanggang: Pizza kecil Pizza besar Roti 10 menit 15 menit 20 menit Ketika pizzeria banyak mendapatkan pesanan, juru masak pizza harus merencanakan waktu pemanggangan dengan baik sehingga pesanan tamu dapat disajikan secepat mungkin. Roti dan pizza dapat dimasukkan ke dalam oven dengan urutan apapun sesuai kapasitas maksimum oven. Tetapi, masing-masing roti/pizza yang dimasukkan harus tetap berada dalam oven sampai ada yang matang dan digantikan oleh roti/pizza lainnya selama tempatnya mencukupi. Tantangan: Ada sebuah pesanan yang terdiri dari satu pizza kecil, dua pizza besar, dan empat roti. Berapa waktu minimum (menit) yang diperlukan sampai semua pesanan selesai dipanggang (selang waktu penggantian roti/pizza matang dengan yang baru dianggap nol)? Jawaban diisi dengan bilangan bulat. Jawaban: Jawaban yang benar adalah 50. Terdapat beberapa solusi optimal. Kunci untuk menemukan jawabannya adalah memperhatikan bahwa dua roti dan satu pizza kecil secara berurutan memerlukan waktu yang sama dengan dua pizza besar dan satu paket yang terdiri dari dua roti secara berurutan. Keduanya memerlukan waktu 50 menit sehingga baik ruang oven maupun waktu digunakan secara maksimal, sehingga tidak ada solusi yang lebih cepat. Solusi tersebut adalah solusi yang optimal, karena oven selalu terpakai secara maksimal. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 23
Inilah Informatika! Ketika mencoba melakukan penjadwalan, seluruh sumber daya (dalam hal ini adalah oven pizza) harus digunakan secara optimal. Waktu harus diusahakan seminimal mungkin. Hal ini dicapai dengan menggunakan ruang oven pizza yang tersedia seoptimal mungkin sehingga waktu pemanggangan pun optimal. Salah satu algoritma umum untuk penjadwalan adalah Algoritma Round Robin, yang akan dieksekusi sesuai urutan yang disusun dalam lingkaran tunggu. Setiap pekerjaan kemudian mendapat porsi tetap dari waktu prosesor dan jika membutuhkan lebih banyak waktu, akan ditambahkan pada akhir antrian. Untuk oven, strategi tersebut tidak dapat digunakan sebab kita tidak dapat mengambil pizza atau roti yang belum selesai dan memasukkannya lagi ke oven. Strategi lainnya adalah mengatur komponen-komponen berdasarkan ukurannya dan mulai dengan ukuran terbesar. Kemudian ruang yang tersedia diisi komponen yang lebih kecil, dan seterusnya. Karena kita juga dapat mengeluarkan dan memanggang makanan yang baru saja dipanggang di tengah proses pemanggangan, maka oven tidak terblokir. Strategi terbaik, bagaimanapun, adalah selalu memastikan bahwa oven terisi penuh. Jika kita mengatur agar oven selalu terisi penuh, maka pekerjaan memanggang akan selesai dalam waktu tersingkat. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 24
Keluar dari Labirin PENEGAK (SMA) I-2017-CH-01A Mira perlu menemukan jalan untuk keluar dari sebuah labirin dan meminta anda untuk memberikan arahan. Dia memasuki labirin dari bawah (segitiga hitam) dan harus mencapai pintu keluar pada bagian atas (lingkaran merah besar). Namun, Mira hanya dapat mengingat empat gerakan berikut: Kode Gerakan Artinya Ilustrasi A Berjalan satu langkah maju dan menghadap ke kiri B Berjalan satu langkah maju dan menghadap ke kanan C Berjalan dua langkah maju dan menghadap ke kiri D Berjalan dua langkah maju dan menghadap ke kanan Mira bisa membentuk sebuah gerakan panjang yang dibentuk dari empat gerakan A, B, C, atau D. Satu gerakan bisa diulang beberapa kali. Urutan gerakan ini dapat membawa Mira keluar dari labirin dengan dua kali perulangan. Segitiga hitam menandakan arah ke mana Mira menghadap. Tantangan: Urutan gerakan manakah yang jika diulang dua kali (sesuai ilustrasi gambar) oleh Mira dapat membuatnya mencapai pintu keluar? Pilihan Jawaban: A,B,C,D D,A,A,D C,B,D,A C,A,A,D o o o o Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 25
Jawaban: Jawaban yang benar adalah D,A,A,D. Gerakan-gerakan berikut ini mengarah ke pintu keluar saat diulangi dua kali: Inilah Informatika! Mira sebenarnya sedang mengeksekusi sebuah program untuk mencapai pintu keluar. Sebuah program terdiri dari rangkaian perintah-perintah dan kadangkala beberapa rangkaian perintah perlu diulang. Untuk membuat hal tersebut menjadi mudah, bahasa pemrograman menyediakan instruksi khusus yang didefinisikan atau disebut sebagai blok pengulangan (loop blocks). Rangkaian perintah-perintah yang dimasukan ke dalam sebuah blok pengulangan akan diulang sebanyak jumlah pengulangan yang ditentukan oleh pembuat program. Dengan menggunakan instruksi khusus ini, pemrogram tidak perlu menulis berulang-ulang bagian kode tertentu. Hal tersebut membuat kode menjadi lebih efisien dan lebih mudah untuk dibaca atau dimodifikasi. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 26
Terowongan PENEGAK (SMA) I-2017-CH-07b Rumah bebras Bobi memiliki empat buah ruangan (A, B, C, F) yang dihubungkan oleh terowongan- terowongan. Ruang A, B, dan C adalah ruang tamu, sedangkan ruang F adalah tempat penyimpanan makanan. 10 ekor berang-berang sedang berada di dalam ruangan A. Mereka merasa kelaparan dan ingin pergi ke ruang F untuk makan. Karena semua berang-berang sangat kelaparan, mereka semua ingin tiba di tempat penyimpanan makanan secepat mungkin. Untuk melewati sebuah terowongan dibutuhkan 1 menit dan satu terowongan hanya dapat dilewati oleh 1 berang-berang dalam satu waktu (Saat terowongan dilewati seekor berang-berang, tidak ada berang-berang lain yang dapat lewat sebelum dia keluar). Banyaknya terowongan yang menghubungkan dua buah ruangan adalah sebagai berikut: ▪ Antara A dan B: 4 terowongan ▪ Antara A dan C: 1 terowongan ▪ Antara B dan C: 2 terowongan ▪ Antara B dan F: 1 terowongan ▪ Antara C dan F: 3 terowongan Semua ruangan tidak memiliki batas kapasitas, jadi semua ruangan dapat memuat sebanyak apapun berang-berang yang ada. Tantangan: Berapa paling banyak berang-berang yang dapat tiba di tempat penyimpanan makanan dalam waktu tepat 2 menit? Isi dengan bilangan bulat antara 0 dan 10. Jawaban: Jawaban yang tepat adalah 2. Banyaknya berang-berang maksimal yang dapat tiba di tempat penyimpanan makanan tepat dalam 2 menit adalah 2. Terdapat 2 buah rute terpendek dari ruangan A menuju tempat penyimpanan makanan. Kedua rute tersebut masing-masing memiliki kapasitas 1 ekor berang-berang dan membutuhkan total 2 menit untuk mencapai ruangan F. Rute tersebut adalah: A ke B ke F - A ke C ke F Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 27
Selain kedua rute tersebut, terdapat rute lain yang memiliki kapasitas 2 ekor berang-berang, tetapi membutuhkan waktu 3 menit untuk mencapai ruangan F. Rute tersebut adalah: A ke B ke C ke F Oleh karena itu, hanya 2 ekor berang-berang yang dapat tiba di tempat penyimpanan makanan tepat dalam waktu 2 menit. Seekor berang-berang menggunakan rute A ke B ke F dan seekor berang-berang lainnya menggunakan rute A ke C ke F. Ini Informatika! Hubungan terowongan-terowongan tersebut dapat dibayangkan sebagai flow network (jaringan dari aliran) dalam teori graf. Model graf dapat dibuat untuk menggambarkan ruangan dan terowongan antar ruangan. Sebuah jalur yang menghubungkan dua buah simpul yang menyatakan ruangan memiliki kapasitas yang menyatakan banyaknya terowongan yang menghubungkan kedua ruangan tersebut (sama dengan banyaknya berang-berang yang dapat pergi dari satu ruangan ke ruangan lain yang sama dalam satu waktu bersamaan). Masing-masing jalur akan menerima sebuah aliran (berang-berang yang sedang melewati terowongan). Jumlah aliran yang melewati sebuah jalur tidak dapat melebihi kapasitas dari sisi. Tujuan yang ingin dicapai adalah mengoptimalkan aliran dari berang-berang yang melewati jaringan tersebut sehingga sebanyak mungkin berang-berang yang tiba dalam waktu yang sesingkat mungkin ke tempat penyimpanan makanan. Ada beberapa algoritma untuk masalah ini, salah satunya yaitu algoritma Ford-Fulkerson. Permasalahan kita merupakan kasus khusus dalam masalah flow network, karena berang-berang diperbolehkan untuk menunggu di B dan C jika tidak memungkinkan untuk melanjutkan perjalanan karena terowongan yang dapat dilewati tidak mencukupi untuk semua berang-berang. Dalam masalah flow network klasik, tidak ada aliran yang boleh tertinggal dalam suatu tempat. Semua harus dialirkan segera setelah melewati sebuah saluran. Dalam masalah flow network klasik juga sebuah saluran harus memiliki arah. Sedangkan, dalam kasus ini, berang-berang bebas pergi melewati terowongan dari satu ruangan ke ruangan lainnya dan begitu pula sebaliknya. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 28
Lampu Merah Biru PENEGAK (SMA) I-2017-CA-10 Berang-berang Beta mengirimkan pesan kepada temannya menggunakan 7 lampu, setiap lampu bisa berwarna merah atau biru. Beta menggunakan 5 lampu pertama untuk menunjukkan huruf yang dikirimkan. Untuk menunjukkan bahwa pesan itu benar, Beta memakai 2 lampu sisanya sebagai berikut: ▪ Lampu ke 6 berwarna biru jika jumlah lampu biru di antara lima lampu pertama adalah genap; jika tidak maka lampu ke 6 berwarna merah. ▪ Lampu ke 7 berwarna merah jika jumlah lampu merah di antara enam lampu pertama adalah genap; jika tidak maka lampu ke 7 berwarna biru. Ingatlah, 0 adalah bilangan genap. Sebagai contoh, jika Beta sudah menentukan lima lampu pertama sebagai: Maka lampu ke 6 harus berwarna biru (karena ada 2 lampu biru di antara 5 lampu pertama), dan lampu ke 7 harus berwarna biru (karena terdapat 3 lampu merah di antara 6 lampu pertama). Jadi, dia harus memakai pola berikut ini: Tantangan: Manakah pola berikut ini yang merupakan pesan yang benar? Pilihan Jawaban: a) b) c) d) Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 29
Jawaban: Jawaban yang benar adalah a) Terdapat 1 lampu biru di antara 5 lampu pertama, jadi lampu ke 6 harus berwarna merah. Dengan demikian terdapat 5 lampu merah diantara 6 pertama, jadi lampu ke-7 harus berwarna biru. Untuk jawaban yang lainnya: o Untuk (A), lampu ke 7 seharusnya biru, karena terdapat 1 lampu merah diantara enam lampu pertama; o Untuk (B), lampu ke 6 seharusnya biru, karena terdapat 0 lampu biru diantara lima lampu pertama dan 0 adalah genap; o Untuk (D), lampu ke 7 seharusnya biru, karena terdapat 3 lampu biru diantara enam lampu pertama. Ini Informatika! Kesalahan dapat terjadi ketika informasi dikirim. Misalnya, jika seseorang sedang menyebutkan nomor telepon, nomor kartu kredit, dll, selalu ada kemungkinan bahwa salah satu angka ditulis kembali secara tidak tepat atau urutannya salah. Beberapa kesalahan dapat dideteksi, dan kadang-kadang diperbaiki memakai teknik yang melibatkan check digits. Pada tantangan ini, lampu ke 6 dan ke 7 berfungsi sebagai tanda untuk meyakinkan bahwa semua lampu sudah dikonfigurasi dengan tepat: jika warna lampu ke 6 atau ke 7 salah ditentukan, kita tahu bahwa pesan tersebut tidak benar. Nomor Kartu kredit, nomor ISBN buku, atau kode UPC pada produk yang dibeli di toko, semuanya dilengkapi check digits, yang memberikan petunjuk jika terjadi kesalahan dalam pengiriman informasi. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 30
Warung Soda PENEGAK (SMA) I-2017-CA-07 Empat Bebras sedang dalam perjalanan dan memutuskan untuk berhenti membeli minuman di warung soda terdekat. Masing-masing Bebras mempunyai minuman kesukaan. Warung soda tersebut menawarkan 4 macam minuman, tetapi mereka kehabisan stok dan hanya tersedia satu buah untuk setiap jenis minuman. Jenis minuman yang disukai setiap bebras didaftarkan di bawah ini. Banyaknya gambar hati di atas setiap kolom menunjukkan tingkat kesukaan mereka terhadap minuman tersebut. Tantangan: Agar setiap Bebras mendapatkan minuman yang paling disukainya, berapakah total hati terbanyak yang bisa diperoleh? Jawablah dengan sebuah bilangan bulat di antara 4 dan 16. Jawaban: Jawaban yang benar adalah: 14. Karena tiga bebras ingin 14. Hal ini didapatkan melalui pencocokan berikut: , jumlah maksimum banyaknya hati yang dapat diperoleh adalah 4+4+3+3 = Anna Bernard Christine Daniel Cara lain untuk melihat ini, karena bebras terakhir memilih sebagai minuman kesukaan dan semua yang lain memilih tersebut sebagai pilihan terakhir, maka bebras terakhir harus mengambil memaksimalkan kegembiraan grup. untuk Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 31
Sekarang, tiga bebras pertama mempunyai kesukaan yang sama namun demikian bebras pertama menyukai sebagai kesukaan berikutnya dan kedua orang yang lain memilih minuman ini sebagai pilihan ketiga. Dengan demikian, bebras pertama harus mengambil dan kedua bebras yang lain mengambil dan dalam sembarang urutan. Ini Informatika! Optimasi adalah bagian yang penting dari informatika. Persoalan Optimasi adalah persoalan yang banyak ditemui dalam informatika. Dalam kasus ini, kita mencoba untuk memaksimalkan kegembiraan grup. Persoalan ini adalah jenis persoalan pencocokan (matching). Dalam hal ini, mereka mencoba untuk mendapatkan minuman kesukaan yang mungkin untuk membuat semua bebras dalam grup senang. Persoalan ini penting dalam dunia nyata. Sebagai suatu contoh, seorang pasien yang sedang menunggu untuk transplantasi organ berada dalam daftar penunggu yang sangat panjang. Namun demikian tidak semua organ pendonor dapat dipakai untuk semua orang yang sedang dalam daftar tunggu, misalnya golongan darahnya harus dicocokkan dengan tujuan untuk memperbesar kemungkinan keberhasilan operasi. Kendala ini menimbulkan kesulitan untuk menemukan pencocokan untuk membuat semua senang. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 32
Memindahkan Dadu PENEGAK (SMA) I-2017-MY-05 jalan tanpa pengeseran. Untuk Jack si berang-berang menggulirkan sebuah dadu sepanjang memindahkan dadu dari satu petak ke petak berikutnya, Jack memutar dadu sepanjang pinggir yang ada di perbatasan antara dua petak. Dia melakukannya 9 kali sampai dadu mencapai petak berisi bulatan putih di sebelah kanan. Tantangan: Sisi dadu dengan berapa titik ada di dasar dadu saat dadu mencapai petak hijau di ujung? Pilihan jawaban: o 3 o 6 o 2 o 4 Jawaban: Jawaban yang tepat adalah 3 Ini Informatika! Ini adalah contoh pemecahan masalah dengan mengamati hanya sebagian informasi di setiap tahap. Metode ini dapat mengurangi kerumitan dan penggunaan memori. Komputer sering diprogram seperti ini. Salah satu alternatif dari metode ini adalah melacak jumlah titik di bagian bawah setelah setiap langkah (1,2,6,5,3,2,6,4,5,3). Tetapi jauh lebih sulit. Untuk beberapa putaran pertama, itu masih mudah. Tetapi setelah beberapa langkah, kita akan mengalami kesulitan karena beberapa angka tidak dapat dilihat. Perhatikan bahwa banyaknya titik di dua sisi kebalikan sebuah dadu selalu 7 (1 berlawanan dengan 6; 2 berlawanan dengan 5; 3 berlawanan dengan 4). Pada mulanya, sisi dengan 1 titik (berlawanan dengan sisi 6) ada di dasar dadu, seperti ditunjukkan pada gambar. Setelah memutar dadu sekali ke petak kedua, sisi dengan 2 titik (berlawanan dengan 5) akan berada di dasar dadu. Misalnya, pertama-tama kita dapat mencatat posisi awal dadu dengan sisi 3, 5, dan 6 yang berada di posisi kanan, depan dan atas. Kita terus mengamati posisi 3 sisi ini saat dadu berputar, selangkah demi selangkah sampai ke petak terakhir. Setelah dadu selesai bergerak, kita bisa tahu sisi mana yang berada di bawah. Posisi Posisi Posisi Langkah Arah bergerak Kanan Depan Atas 1 ↑ Kanan Atas Belakang 2 ↑ Kanan Belakang Bawah 3 ↑ Kanan Bawah Depan Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 33
Posisi Posisi Posisi 4 → Bawah Kiri Depan 5 → Kiri Atas Depan 6 ↓ Kiri Depan Bawah 7 → Atas Depan Kiri 8 ↓ Depan Bawah Kiri 9 ↓ Bawah Belakang Kiri Selanjutnya, jika kita memprogram dua metode ini di komputer, kita akan melihat bahwa metode pertama, seperti yang ditunjukkan dalam jawaban, lebih cepat. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 34
Kota Penuh Putaran PENEGAK (SMA) I-2017-Sl-02 Suatu robot bekerja di suatu kota. Robot berjalan menyusuri jalan dari suatu tempat ke tempat lain mengikuti petunjuk yang diberikan. Pada setiap pertemuan beberapa ruas terdapat putaran (jalan memutar) dan robot akan memutar berlawanan arah jarum jam, kemudian mengambil simpangan urutan tertentu sesuai yang petunjuk yang diberikan. Petunjuk yang diberikan berupa angka-angka urutan simpangan. Misalnya petunjuk "4 1 2" akan diikuti robot sebagai berikut: Pada putaran pertama, ambil simpangan ke-4. Pada putaran kedua, ambil simpangan ke-1. Pada simpangan ketiga, ambil simpangan ke-2. Jika robot mula-mula berada di A, maka petunjuk itu akan dijalaninya sebagai tergambar berikut ini dengan menyusuri jalan yang diberi warna gelap sebagai berikut: Tantangan: Jika pada awalnya robot berada di A, petunjuk manakah yang akan membawa robot ke C? Pilihan Jawaban: (a) "2 2 5 2 1 3" (b) "3 1 3 1 2 2" (c) "1 2 3 3 1 2 2" (d) "1 2 2 2 1 1 2" Jawaban: Jawaban yang paling tepat adalah (c) Ini Informatika! Tantangan ini memperkenalkan elemen penting dari bahasa pemrograman komputer, yaitu sekumpulan instruksi sekuensial, di mana satu instruksi akan dikerjakan setelah satu instruksi lainnya, sesuai urutan yang ditentukan. Misalnya, sederetan instruksi -yang diberikan ke mobil tanpa sopir (self driving car)- adalah sebuah program komputer. Pada contoh ini, hanya tersedia beberapa instruksi yang sederhana, berarti bahasa pemrogramannya juga sederhana. Pada situasi lain, digunakan bahasa yang berbeda dengan instruksi yang berbeda pula, yang lebih kompleks. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 35
Robot PENEGAK (SMA) I-2017-SK-12b Milan berhasil mengembangkan robot yang mampu membaca petak berwarna, mengubah warnanya dan berpindah 1 petak ke kiri atau ke kanannya. Robot tersebut bergerak dengan aturan yang digambar dan diartikan sebagai berikut: Jika dia berada di sebuah petak merah, maka robot mengganti warna petak menjadi hijau dan berpindah 1 petak ke kanan. Jika dia berada di sebuah petak merah, maka robot mengganti warna petak menjadi hijau dan berpindah 1 petak ke kiri. Pada awalnya, robot berada pada petak paling kiri. Ia mendeteksi warna petak, menemukan aturan yang berkaitan dengan warna tersebut, dan berpindah sesuai aturan tersebut. Kemudian robot akan mengulangnya dari petak di mana ia berada. Jika ia tak dapat menemukan aturan, maka berhenti dan keluar dari petak. Diberikan sederet petak sebagai berikut: Dan aturannya adalah: Tantangan: Pilihlah keadaaan petak saat robot berhenti: a) b) c) d) Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 36
Jawaban: Jawaban yang benar adalah a) . Ini Informatika! Dalam bidang informatika, model komputasi memegang peranan sangat penting. Model komputasi adalah aturan dan struktur yang harus ditaati. Contohnya, model komputasi dari sebuah program komputer (software), adalah sekumpulan teks berisi instruksi dalam bahasa programming yang dipakai untuk menulis program tersebut. Tantangan yang diberikan di atas sangat mirip dengan model mesin Turing. Mesin Turing adalah model yang sangat berguna sebagai model komputasi karena walaupun sederhana, model ini setara dengan berbagai macam bahasa programming. Artinya, kita bisa menerjemahkan berbagai macam program komputer ke dalam mesin Turing, dan sebaliknya. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 37
Tandems PENEGAK (SMA) I-2017-BY-02 Suatu sub-string disebut "tandem" jika dinyatakan sebagai dua rangkaian karakter berturutan yang identik. Banyaknya karakter dalam suatu tandem disebut dengan panjang tandem. Misalnya string AABABA mempunyai 3 tandem: AA (panjang 2), ABAB dan BABA (panjang 4). Tantangan: Tentukan panjang dari tandem terpanjang string TCTACTAACCTACTAACAC Pilihan Jawaban: a) 10 atau lebih b) 8 c) 6 d) 4 Jawaban: Jawaban yang benar adalah a) 10 atau lebih karena terdapat tandem dengan panjang 16. Untuk memecahkan soal ini, kita perlu membandingkan beberapa pasang sub string: Satu sub-string dimulai dengan karakter pertama T dan berakhir dengan huruf sebelum T berikutnya. Kemungkinan lain sub-string yang dimulai dengan T harus juga dibandingkan: TCTACTAACCTACTAACAC TCTACTAACCTACTAACAC TCTACTAACCTACTAACAC TCTACTAACCTACTAACAC Dapat dilihat bahwa untuk T hanya terdapat tandem dengan satu huruf. Kemudian bandingkan sub string yang mungkin yang mulai dengan karakter kedua C dengan cara yang sama: TCTACTAACCTACTAACAC tandem dengan panjang=6 TCTACTAACCTACTAACAC TCTACTAACCTACTAACAC tandem dengan panjang =16 Terlihat dengan jelas bahwa tandem terakhir adalah yang terpanjang. Untuk menemukan semua tandem, kita dapat memakai algoritma berikut, dimana beg_1 adalah posisi pertama dari sub-string pertama dan beg_2 adalah posisi pertama dari sub-string kedua. poz_1 dan poz_2 adalah posisi saat ini dari setiap sub-string. A(pos_1) dan A(poz_2) adalah karakter yang ada pada posisi yang sama pada setiap sub-string. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 38
beg_1 ← 1 beg_2 ← beg_1 +1 max_Length ← 0 WHILE beg_1 < N poz_1 ← beg_1 poz_2 ← beg_2 Length ← 0 WHILE A(poz_1) = A(poz_2) AND poz_1 < beg_2 Length ← Length+1 poz_1 ← poz_1+1 poz_2 ← poz_2+1 END-WHILE IF poz_1 = beg_2-1 AND Length > max_Length THEN max_Length ← Length IF beg_2<N THEN beg_2 ← beg_2+1 ELSE beg_1 ← beg_1+1; beg_2 ← beg_1+1 END-WHILE OUTPUT(max_Length) Ini Informatika! Pencarian tandem adalah soal yang kadang-kadang dilakukan pada sebuah teks dalam bentuk string, dalam bio informatika dan analisis status dari berbagai sistem otomatis. Jika ukuran string makin panjang, seperti dalam kasus rangkaian kode genetik, maka masalah menjadi sangat sulit dan membosankan untuk dilakukan oleh manusia, tetapi dengan proses iterasi (looping) sederhana, komputer dengan cepat dan efisien menyelesaikan algoritma ini. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 39
KRL PENEGAK (SMA) I-2017-BE-05 Martina perlu berangkat ke sekolah memakai transportasi publik yaitu KRL setiap hari. Karena tidak ada jalur langsung, maka Martina harus berpindah di antara beberapa jalur. Peta berikut ini menunjukkan enam jalur KRL yang ada. Waktu perjalanan pada ruas di antara dua stasiun KRL dituliskan sebagai bilangan yang tertera pada setiap ruas tersebut. Rumah Martina ditandai dengan "H", sekolahnya ditandai dengan "W", dan stasiun, untuk berpindah jalur, ditandai dengan "S". Tantangan: Jika perpindahan jalur dianggap tidak memerlukan waktu, urutan jalur mana yang harus diambil Martina agar tiba di tempat kerja secepat mungkin? Pilihan Jawaban: a) b) c) d) Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 40
Jawaban: Jawaban yang benar adalah c) Jarak untuk setiap pilihan A, B, C, D adalah: 13, 12, 11 and 19. Ini informatika! Graf adalah struktur data yang sangat penting dalam informatika karena dapat dipakai untuk menyatakan jaringan dari beberapa jenis yang berbeda (sosial, preferensi, transportasi...). Dalam tugas ini, tujuannya adalah menemukan jalur terpendek di antara dua titik dalam suatu graf, jika diberikan bobot pada setiap sisinya. Persoalan ini dikenal sebagai persoalan jalur terpendek dan dapat diatasi antara lain dengan memakai algoritma Dijkstra. Tantangan Bebras Indonesia 2017 - Tingkat SMA (Penegak) 41
Copyright 2017 Bebras Indonesia Licence CC BY-NC-SA 4.0