Raja Putih akan memberikan penghargaan kepada 10 pion. Raja akan memberikan 3 jenis penghargaan, yaitu:
a. Penghargaan Pion Jujur (PPJ) kepada 6 pion paling jujur.
b. Penghargaan Pion Kuat (PPK) kepada 8 pion paling kuat.
c. Penghargaan Pion Lucu (PPL) kepada 8 pion paling lucu.
Setiap pion dapat menerima lebih dari 1 penghargaan. Pion yang mendapatkan ketiga perhargaan sekaligus akan dinaikkan pangkatnya menjadi benteng. Berapa jumlah minimal pion yang pasti naik pangkat?
Kuda-kuda milik raja hitam sedang makan di suatu papan catur berukuran 4 x 4 petak. Semua kuda milik raja hitam adalah kuda perang yang akan menyerang apapun yang terletak pada daerah serang mereka. Jika kuda terletak pada posisi (x,y), maka daerah serang kuda tersebut adalah petak pada posisi (x+1,y+2),(x-1,y+2),(x+1,y-2),(x-1,y-2),(x+2,y+1),(x-2,y+1),(x+2,y-1), dan (x-2,y-1). Dengan catatan posisi-posisi tersebut berada dalam area papan catur. Para pengawal kerajaan telah mengatur letak tiap kuda sehingga tidak ada satupun kuda yang akan saling menyerang. Berapa jumlah maksimal kuda milik raja hitam?
Harga Bahan Bakar Minyak (BBM) di sebuah negara naik sebesar 25%. Beberapa hari kemudian, harga BBM di negara tersebut turun sebesar 20%. Apakah harga BBM setelah mengalami penurunan menjadi LEBIH MURAH, LEBIH MAHAL, atau SAMA DENGAN harga BBM sebelum mengalami kenaikan?
Sebelas tim sepak bola akan bertanding satu dengan yang lain dalam sebuah turnamen. Setiap tim akan bertanding dengan sepuluh tim yang lain sebanyak tepat satu kali. Tim yang menang dalam sebuah pertandingan akan mendapatkan 5 poin, sedangkan yang kalah mendapatkan 0 poin. Bila seri maka kedua tim akan mendapatkan 1 buah poin. Berapa banyak total point yang mungkin terjadi jika jumlah dari poin yang didapatkan oleh semua tim tersebut antara 100 sampai dengan 210?
Di sebuah desa, tinggallah seorang gadis cantik yang hobi melompat-lompat. Di suatu pagi yang cerah, sang gadis akan berangkat ke sekolah dengan berjalan atau melompat-lompat.
Gambar di atas adalah peta desa dimana sang gadis cantik tinggal. Peta dinyatakan dalam petak? petak 6x6. Sekolah sang gadis terletak di petak [6,6], sedangkan rumah tempat tinggal sang gadis terletak di petak [1,1]. Dari suatu petak, sang gadis boleh memilih antara berjalan sejauh 1 petak ke arah utara atau timur, atau melompat sejauh 2 petak ke arah utara atau timur. Ada berapa cara agar sang gadis bisa sampai ke sekolah dengan selamat tanpa terjebur ke sungai?
Pada suatu hari, Dedew dan Thony sedang bermain sebuah game bilangan. Kedua pemain bergantian mengucapkan bilangan asli secara berurutan (dari 1), hingga permainan berhenti. Jika sebuah bilangan mengandung angka 7, atau merupakan kelipatan 7, maka pemain harus mengucapkan "Up!", bukan bilangannya. Game ini berhenti jika ada pemain yang melakukan kesalahan (mengucapkan "Up!" pada saat yang kurang tepat, atau tidak mengucapkan "Up!" pada saat bilangan itu mengandung angka 7 atau merupakan kelipatan 7). Jika game ini berhenti di bilangan 178, berapa banyak jumlah "Up!" yang telah diucapkan oleh kedua pemain?
Ada 4 buah tanaman yang harus dipanen. Tanaman ke-i memiliki tinggi Ti cm pada hari pertama ketika akan dipanen dan jika tidak dipanen akan menyusut sebanyak Si cm setiap malam hari. Diketahui bahwa:
Tanaman ke-i | Ti | Si |
1 | 30 | 3 |
2 | 20 | 4 |
3 | 10 | 2 |
4 | 25 | 5 |
Artinya, apabila tanaman ke-1 dipanen pada hari ke-1, tingginya adalah 30 cm. Apabila dipanen pada hari ke-2, tingginya adalah 27 cm. Apabila dipanen pada hari ke-3, tingginya adalah 24 cm, dan seterusnya. Jika dalam 1 hari hanya dapat memanen habis 1 tanaman saja, berapakah JUMLAH tinggi keempat tanaman hasil panen MAKSIMAL yang mungkin didapat?
Bebek-bebek pak Dengklek membentuk pertemanan seperti diilustrasikan pada gambar di bawah ini, dengan bulatan hitam adalah bebek dan garis adalah hubungan pertemanan antara dua bebek
Pak Dengklek biasa memberikan berita ke salah satu bebek, dan berita tersebut menyebar melalui hubungan pertemanan. Ada sejumlah bebek yang jika keluar dari hubungan pertemanan mengakibatkan terputusnya komunikasi. Contoh: Jika A meninggalkan pertemanan, akan mengakibatkan terputusnya komunikasi sejumlah bebek. Untuk menghindari hal tersebut, pak Dengklek meminta para bebek untuk menambah hubungan pertemanan. Berapa minimal hubungan pertemanan baru yang perlu dibuat supaya hubungan komunikasi tetap terjaga ketika salah satu bebek meninggalkan kelompok tersebut.
Deskripsi untuk soal nomor 9 - 10
Raja putih baru saja mendapatkan jenis pasukan baru yaitu 150 ekor Naga. Naga menyerang dengan cara menyemburkan api atau menyemburkan es. Agar dapat menyemburkan api, sebelumnya naga harus diberi makan dengan daging. Jika naga diberi makan sayuran maka Naga akan menyemburkan es. Ada 3 jenis daging yang dapat dimakan oleh naga yaitu; Daging sapi, ayam, bebek. Diketahui ada 60 naga yang menyukai daging sapi, 72 naga yang menyukai daging ayam, 80 naga yang menyukai daging bebek, dan 7 naga vegetarian yang tidak makan daging (menyemburkan es).
Jika ada 55 naga yang menyukai daging sapi dan bebek, berapa jumlah naga yang hanya menyukai daging ayam?
Jika ternyata ada 9 naga yang yang tidak makan daging maupun sayuran (mereka hanya minum), dan ada 40 naga yang menyukai daging ayam dan bebek, berapa jumlah naga yang menyukai daging sapi dan (bebek atau ayam)?
Pak Dengklek sedang membagi kertas ujian di kelasnya. Tumpukan kertas sebanding banyaknya lembar kertas ujian. Karena malas, Pak Dengklek langsung memberikan sebuah tumpukan kertas ujian ke seorang murid. Kemudia Pak Dengklek menyuruh murid itu untuk mencari kertas ujiannya sendiri, dan membagi tumpukan kertas ujian itu menjadi dua tumpukan yang sama tinggi seusai murid itu mendapatkan kertas ujiannya. Kedua tumpukan itu diberikan ke dua murid lain yang belum mendapatkan kertas ujiannya. Jika tinggi tumpukan adalah x, maka seorang murid perlu x detik untuk mendapatkan kertas ujiannya dari tumpukan tersebut. Lalu, seorang murid perlu 10 detik untuk menyerahkan dua tumpukan ke dua murid lain. Jika Dedew, seorang murid Pak Dengklek, menerima hanya 1 lembar kertas dan dia telah menunggu selama 50 detik, berapa banyak murid Pak Dengklek?
Pak Dengklek, Bu Dengklek, Ammar dan Rakina ingin melewati sebuah jembatan. Karena sudah berumur 1000 tahun, jembatan tersebut hanya bisa dilewati oleh maksimal 2 orang. Karena hari sudah malam, maka untuk dapat melewati jembatan tersebut diperlukan senter sebagai sumber penerangan. Namun, mereka hanya membawa sebuah senter. Diketahui untuk melewati jembatan tersebut Pak Dengklek membutuhkan waktu selama 10 detik, Bu Dengklek membutuhkan waktu 5 detik, Ammar membutuhkan waktu 2 detik dan Rakina membutuhkan waktu selama 1 detik. Apabila terdapat 2 orang yang melewati jembatan disaat yang bersamaan, maka orang yang lebih cepat akan menyesuaikan kecepatannya dengan orang yang lebih lambat. Waktu minimal yang dibutuhkan untuk mereka melewati jembatan tersebut adalah ….. detik.
Ada berapa banyak angka diantara 0-80 yang memiliki tepat 4 angka 1 dalam representasi binernya?
Deskripsi untuk soal nomor 14 - 15
Vin membawa sekarung tromino berbentuk L dan sebuah monomino. Ia lalu menantang Van untuk menempatkan tromino dan monomino tersebut sehingga papan itu tertutupi penuh. Sebelum Van mulai, Vin ingin tahu berapa banyak petak di papan tersebut yang mungkin akan ditutupi oleh monomino? Jika papan Vin berukuran 2x2, ada 4 petak berbeda yang mungkin ditutupi oleh monomino:
Yang diwarnai abu adalah sebuah tromino berbentuk L, dan yang diwarnai putih adalah sebuah monomino.
Petak Vin berukuran 5x5, Van akan menempatkan 8 tromino dan sebuah monomino, berapa banyak petak berbeda di papan tersebut yang mungkin ditutupi oleh monomino?
Petak Vin berukuran 8x8, Van akan menempatkan 21 tromino dan sebuah monomino, berapa banyak petak berbeda di papan tersebut yang mungkin ditutupi oleh monomino?
Deskripsi untuk soal nomor 16 - 17
Ammar sangat gemar makan. Sebuah restaurant menyediakan 3 jenis makanan yaitu ayam, kangkung dan sambal. Tidak hanya gemar makan, Ammar juga gemar bermain teka-teki. Ammar membuat beberapa peraturan untuk dirinya sendiri saat makan.
Jika Ammar memesan 3 ayam dan 2 kangkung, banyaknya kemungkinan Ammar menghabiskan makanannya adalah ....
Jika Ammar memesan 3 ayam, 2 kangkung dan 2 sambal, banyaknya kemungkinan Ammar menghabiskan makanannya adalah ....
Pak Dengklek akan membagikan 20 bingkisan kepada 4 orang temannya, Van, Vin, Va, Vi, tentunya masing-masing setidaknya mendapat 1 bingkisan, uniknya Pak Dengklek tidak ingin ada sebuah bilangan bulat x (x > 1), yang dapat habis membagi banyak bingkisan yang diterima Van, Vin, Va, dan Vi. Berapa banyak cara Pak Denglek dapat membagi bingkisannya?
Pak Dengklek sedang menyusun ubin untuk menutupi lantai berukuran 4x7 dengan ubin berukuran 1x2. Ubin boleh disusun vertikal atau horisontal tanpa memotongnya. Ada berapa banyak cara untuk memenuhi lantai tersebut?
Pada kesempatan kali ini, Astrid dan Bonita (nama samaran, bukan nama asli) sedang bosan dan menciptakan sebuah permainan baru. Game nya sangat simple. Mula-mula disediakan N buah batu, lalu pemain secara bergantian mengambil beberapa batu. Pemain yang kehabisan langkah (kehabisan batu) dinyatakan kalah. Namun kali ini aturan permainan ini berbeda. Dalam 1 giliran, pemain hanya boleh mengambil sejumlah tepat 3, 5, 7, atau 9 batu. Karena Astrid lebih tua dari Bonita, Astrid mendapat kesempatan giliran pertama. Apabila mereka berdua mampu bermain secara optimal, berapa banyaknya batu (N) dengan N lebih besar dari 1000, agar Bonita menang di dalam permainan tersebut?
Diberikan deret bilangan:
2 5 4 15 8 45 X Y
Berapakah nilai X dan nilai Y?
Temukan suatu bilangan 10 digit sehingga:
Deskripsi untuk soal nomor 23 - 24
Pada suatu hari, bebek-bebek Pak Dengklek yang bernama Kwak, Kwik, Kwek, dan Kwok ingin mengikuti lomba lari. Karena sudah bekerja keras, Pak Dengklek ingin menghadiahkan sepasang sepatu baru untuk masing-masing bebek-bebeknya. Akan tetapi, masing-masing bebek memiliki warna kesukaan yang berbeda-beda. Berikut ini adalah beberapa informasi terakhir yang diingat Pak Dengklek:
Bagaimana urutan tinggi bebek-bebek Pak Dengklek diurutkan dari yang paling pendek?
Siapa bebek yang menyukai warna putih?
Seorang peternak memiliki sejumlah binatang yang terdiri atas kelinci, kuda, dan sapi. Pernyataan yang diketahui adalah:
Berapa banyak binatang yang dimiliki peternak tersebut?
Bebek Pak Dengklek berulang tahun. Pak Dengklek memberi kue ulang tahun berbentuk tanda tambah:
Berapa maksimal potongan kue yang dapat peroleh Pak Dengklek dengan melakukan 2x pemotongan. Satu pemotongan harus berupa garis lurus, dan tidak boleh memindahkan posisi kue?
Diberikan dua buah angka A dan B dengan ketentuan bilangan A dan B merupakan bilangan real. Tulislah rumusan yang menghasilkan nilai terbesar dari dua bilangan tersebut dengan operator bilangan biasa (+, -, ×, ÷) dan fungsi ABS (nilai absolut 2 buah nilai real) tanpa memakai operator perbandingan (<, >, =, ≤, ≥, ≠).
Di sebuah perumahan yang rumah-rumahnya tersusun berjajar, terdapat 8 rumah. Beberapa keterangan yang terdapat di dalam perumahan tersebut yakni:
Sebutkan urutan rumah tersebut dari rumah yang letaknya paling barat hingga paling timur.
Athin dan Ayos sedang bermain tebak-tebakan bilangan dan terjadilah percakapan berikut:
Athin : "Aku memikirkan sebuah bilangan bulat antara 1 sampai dengan 10 "
Ayos : "Apakah bilangan tersebut bilangan prima?"
Athin : "...." (Athin menjawab dengan ya / tidak, tapi hanya Ayos yang mendengar ucapannya)
Ayos : "Apakah bilangan tersebut bilangan ganjil?"
Athin : "...." (Athin menjawab dengan ya / tidak, tapi hanya Ayos yang mendengar ucapannya)
Ayos : "Oh, dengan ini barulah aku tahu bilangan yang kamu tebak adalah X"
Athin : Ya Benar, X adalah ....... {tuliskan jawaban dalam bentuk angka saja}
Catatan: 1 bukan bilangan prima.
Athin dan Ayos sedang bermain tebak-tebakan bilangan dan terjadilah percakapan berikut:
Athin : "Aku memikirkan sebuah bilangan bulat antara 1 sampai dengan 10"
Ayos : "Apakah bilangan tersebut bilangan prima?"
Athin : "...." (Athin menjawab dengan ya / tidak, tapi hanya Ayos yang mendengar ucapannya)
Ayos : "Apakah bilangan tersebut bilangan ganjil?"
Athin : "...." (Athin menjawab dengan ya / tidak, tapi hanya Ayos yang mendengar ucapannya)
Ayos : "Apakah bilangan tersebut huruf depannya S?"
Athin : "...." (Athin menjawab dengan ya / tidak, tapi hanya Ayos yang mendengar ucapannya)
Ayos : "Oh, dengan ini barulah aku tahu bilangan yang kamu tebak adalah Y"
Athin : Ya, bilangan Y adalah ....... {tuliskan jawaban dalam bentuk angka saja}
Catatan : 1 bukan bilangan prima.
Tuliskan output dari program pseudo code di bawah ini jika input x = 9.
function jarak(km:integer): integer; begin if (km <= 2) then jarak := 1 else jarak := jarak(km-1) + jarak(km-2); end; var i, x :integer; begin readln(x); for i := x downto 1 do write(jarak(i), ' '); end.
Tuliskan output dari program pseudo code di bawah ini jika input b = 4 dan k = 27.
var b, k : int64; s : int64; i : byte; begin readln(b); readln(k); k := k - b; s := 1; for i := 1 to 61 do s := s * 2; while k > 0 do begin if (k >= s) then begin write(s, ’ ‘); k := k mod s; end; s := s div 2; end; end.
Tuliskan output dari program pseudo code di bawah ini jika input n = 11 dan k = 3.
var n, k, i : byte; begin readln(n, k); for i := 1 to n do begin if i mod (k+1) = 0 then write('* ') else write(i, ' '); end; writeln(‘#’); end.
Tuliskan output dari program pseudo code di bawah ini.
var ss : string; i,j,sz : integer; boo : boolean; tmp : char; begin ss := 'TOKITOKI'; i := 1; sz := length(ss); {length adalah fungsi untuk mengembalikan panjang string} while(i<=sz) do begin j:=i; while ( (ss[j] <> ss[j+1]) and (j < sz) ) do begin tmp := ss[j]; ss[j]:= ss[j+1]; ss[j+1]:= tmp; j := j + 1; end; i := i + 1; end; writeln(ss); end.
Tuliskan output dari program pseudo code di bawah ini jika input x = 20 dan y = 14.
readln(x,y); z := 0; while (x > y) do begin z := z + x; z := z - y; x := x - 2; y := y - 1; end; writeln(z);
Tuliskan output dari program pseudo code di bawah ini.
begin lala:=10; x:=2; haha:=0; for i:=1 to lala do begin j:=i; lili:=true; while (j>1) do begin if (j mod x = 1) then lili:=false; j:=j div x; end; if (lili=true) then haha:=haha+i; else haha:=haha+1; end; writeln(haha); end.
Deskripsi untuk soal nomor 37 - 38
var a : array [1..100000] of longint; i, j, n : longint; begin readln(n); for i := 1 to n do a[i] := 0; for i := 2 to n do begin if (a[i] = 0) then begin j := i; while (j <= n) do begin a[j] := a[j] + 1; j := j + i; end; end; end; end.
Apabila n = 16, berapa nilai dari elemen array a[9]?
Apabila n = 300, berapa nilai i terkecil dimana 1 <= i <= n dan a[i] >= 11?
Deskripsi untuk soal nomor 39 - 40
const satu=1; var lala, x, haha, i:integer; begin lala:=10; x:=10; haha:=0; for i:=0 to x do begin if ((lala & (satu shl i)) <> 0) then haha:=haha+1; end; { A shl B adalah operator menggeser bit-bit A ke kiri sejumlah B kali} writeln(haha); end.
Tuliskan output dari program pseudo code di atas.
Apabila baris keempat dari kode di atas (“lala:=10;”) diubah menjadi "lala:=2000;" dan baris kelima diubah menjadi "x:=30;", maka output dari program pseudo code di atas adalah .....
Tuliskan output dari program pseudo code di bawah ini.
var a: array[0..15] of integer = (1, 0, 2, 0, 4, 0, 3, 2, 6, 2, 5, 3, 7, 3, 6, 5); b: array[0..7] of integer = (4, 1, 8, 12, 5, 14, 15, 13); c: array[0..15] of integer = (-1, -1, 0, -1, 2, -1, 3, -1, 6, -1, 7, -1, 10, -1, 11, 9); d: array[0..7] of integer = (-1, -1, -1, -1, -1, -1, -1, -1); procedure kemanamana(y, z: integer); var e: integer; begin e := b[y]; d[y] := z; while(e > -1) do begin if(d[a[e]] = -1) then kemanamana(a[e], z + 1); e := c[e]; end; end; begin kemanamana(0, 0); writeln(d[7]); end.
Penjumlahan dari tiga angka terakhir yang tercetak oleh program pseudo code di bawah adalah …..
var aku, kamu, dia, saya, anda : integer; begin aku:=2; kamu:=10; for saya:=aku to kamu do begin dia:=saya; for anda := 1 to saya-1 do begin writeln(dia); dia := dia * (saya-anda) div (anda+1); end; end; end.
Deskripsi untuk soal nomor 43 - 44
function D(X,Y : integer) : integer; begin if (Y = 0) then D := 1 else D := Y+1; end; function C(X,Y : integer) : integer; begin if (Y = 0) then C := X else C := D(X,C(X,Y-1)); end; function B(X,Y : integer) : integer; begin if (Y = 0) then B := 0 else B := C(X,B(X,Y-1)); end; function A(X,Y : integer) : integer; begin if (Y = 0) then A := 1 else A := B(X,A(X,Y-1)); end; begin writeln(A(4,2)); end.
Tuliskan output dari program pseudo code di atas.
Jika kode program "writeln(A(4,2));" diganti dengan "writeln(A(3,6));", Tuliskan output dari program pseudo code tersebut.
Tuliskan output dari program pseudo code di bawah ini.
var apaini: array[1..4, 1..10] of char = (('T', 'I', 'M', ' ', 'O', 'L', 'I', 'M', 'P', 'I'), ('A', 'D', 'E', ' ', 'K', 'E', 'G', 'A', 'N', 'T'), ('E', 'N', 'G', 'A', 'N', ' ', 'I', 'N', 'D', 'O'), ('N', 'E', 'S', 'I', 'A', ' ', 'Y', 'E', 'A', '!')); hah: array[1..4] of integer = (1, 0, -1, 0); huh: array[1..4] of integer = (0, 1, 0, -1); hoh: array[1..4, 1..10] of boolean; hihi: integer; function heh(b, y: integer): boolean; begin heh:=((1 <= b) and (b <= 4) and (1 <= y) and (y <= 10)); end; procedure iniapalagi(a, z: integer); var i: integer; b, y: integer; begin hihi := hihi + 1; hoh[a][z] := true; for i := 1 to 4 do begin b := a + hah[i]; y := z + huh[i]; if (heh(b,y)) and (not hoh[b][y]) and (apaini[b][y]<>' ') and (apaini[b][y]<>'E') and (apaini[b][y]<>'T') then iniapalagi(b, y); end; end; begin iniapalagi(1, 3); writeln(hihi); end.
Deskripsi untuk soal nomor 46 - 47
var mola : array[1..10] of integer = (5,9,4,3,10,1,6,2,7,8); pos : array[1..10] of integer; dah : array[1..10] of boolean; function molamola(): integer; var i, tempe, hihi, skr:integer; m:integer; begin m:=0; for i:=1 to 10 do begin pos[mola[i]] := i; dah[i] := false; end; for i:=1 to 10 do begin if not dah[i] then begin skr := i; repeat dah[skr] := true; hihi := pos[skr]; if not dah[hihi] then begin tempe := mola[skr]; mola[skr] := mola[hihi]; mola[hihi] := tempe; end; skr := hihi; m:=m+1; until dah[skr]; m:=m-1; end; end; molamola:=m; end;
Jika pada program utama pseudo code di atas terdapat statement untuk mencetak hasil dari molamola() maka output yang ditampilkan adalah …..
Berapa nilai mola[5] pada akhir program ……
Berikut ini adalah pseudocode dari operasi penukaran nilai dua variabel yang berbeda:
Nah sekarang kalian harus membuat sebuah pseudocode operasi penukaran nilai dua variabel hanya dengan dua variabel saja.
*Hint : artinya kalian hanya boleh memakai variabel ‘a’ dan ‘b’ tanpa tambahan variabel lain seperti ‘temp’
Buatlah pseudocode untuk permasalahan berikut ini:
Diberikan sebuah string S yang karakternya hanya berupa digit-digit angka.
Contoh Masukan | Contoh Keluaran | Catatan |
0 | YA | 0 adalah angka kelipatan 25 |
000000000 | YA | 000000000 adalah angka kelipatan 25 |
521 | YA | 521 bisa ditukar karakter-karakternya menjadi 125 yang merupakan angka kelipatan 25 |
659 | TIDAK | 659 bisa ditukar karakter-karakternya menjadi 569, 596, 659, 695, 956, dan 965, tetapi tidak ada yang merupakan angka kelipatan 25 |
10 | TIDAK | |
010 | YA | 010 menjadi 100 |
758 | YA | 758 menjadi 875 |
0561 | YA | 0561 menjadi 1650 atau 6150 |
1243456789 | YA | 123456789 salah satunya menjadi 987614325 |
123406789 | TIDAK |
Pak Dengklek memiliki sebuah array berisi N bilangan bulat non-negatif. Pak Dengklek pun menantang Anda untuk memilih angka-angka dari arraynya yang jika dijumlahkan habis dibagi N. Tentu saja angka di suatu index tidak boleh dipilih lebih dari sekali. Apabila hal ini mungkin, beritahu Pak Dengklek berapa banyak angka yang Anda ambil dan apa saja angka-angkanya. Apabila hal ini tidak mungkin, katakan "Tidak mungkin".
Format Input :
Format Output :
Contoh Masukan | Contoh Keluaran |
3 |
2 4 2 |
3 4 4 4 |
3 4 4 4 |