Anda di halaman 1dari 19

Olimpiade Sains Kota (OSK) 2016 - Komputer

1. Berapakah banyaknya bilangan prima antara 1 sampai 100 (inklusif)?


a. 15 b. 20 c. 25 d. 30 e. 35

Pembahasan:
Jawabannya adalah 25 (C)
Karena bilangan prima antara 1-100
ialah 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97

2. Berapa banyaknya bilangan kubik (pangkat 3 dari sebuah bilangan positif) antara
2 sampai dengan 1001 (inklusif)?
a. 7 b. 8 c. 9 d. 10 e. 11

Pembahasan:
Bilangan kubik terbesar yang lebih kecil dari 1001 ialah 1000 = 10 3, terus bilangan
kubik terkecil yang lebih besar dari 2 ialah 8 = 2 3, sehingga jumlah bilangan antara 2
- 10 adalah 9 yaitu 2, 3, 4, 5, 6, 7, 8, 9, 10. 1 tidak dihitung karena (1 3=1). Jadi
jawabannya ialah 9 (C)
Benar, untuk a 0, b a, inklusif banyaknya bilangan kubik adalah:
(a,b)= -

3. Berapakah hasil 272016 mod 26?


a. 1 b. 2 c. 3 d. 4 e. 5

Pembahasan: gunakan Euler's totient function untuk menjawab soal ini.


272016 mod 26 didapatkan phi(26) = 12
= (26.1+1)2016 mod 26 persamaanya menjadi
= 12016 mod 26 272016 mod 12 mod 26
= 1 (A) 270 mod 26
1 mod 26
= 1(A)

4. (2m + 5) mod n = 6
Berapakah nilai m yang yang mungkin jika n bernilai 999983?
a. 200004 b. 499992 c. 499993 d. 499991 e. 499990

Pembahasan:
(2m+5) mod n = 6
(2m+5) mod 999983 = 6
2m mod 999983 + 5 mod 999983=6
2m mod 999983 + 5 =6
2m mod 999983=1
m = 499992 (B)

5. Berapa banyak string 10 bit yang banyaknya bit 1 string tersebut sama dengan
banyaknya bit 0?
Catatan : bit adalah digit bilangan biner (0 dan 1).
a. 126 b. 252 c. 504 d. 512 e. 120
Pembahasan:
10!/5!x5! =252 bit pertama harus 1, jadi sisa 9 tempa
dalam string bit, hanya ada 2 kemungkinan, yaitu 1 atau 4 angka 1 tersisa dan 5 angka 0 tersis
0. jika banyaknya angka 0=banyaknya angka 1, maka, Jadi, 9! / 4!5! 126
10/2=5 adalah panjang masing-masing bit 1 dan 0.
= 252

6. Terdapat 4 bilangan x1, x2, x3, dan x4. Jika x1 + 3 x2, x2 <= x3, x3 + 5 <= x4,
1 <= x1, x2, x3, x4 <= 40, maka banyaknya kemungkinan x 1, x2, x3, dan x4 yang
berbeda adalah:
a. 1256640 b. 628320 c. 52360 d. 26180 e. 169080

Pembahasan:
Misalkan y1 = x1 + 3. Perhatikan bahwa 1<=X1<=32
Karena x1 >= 1, maka y1 >= 4
Misalkan y2 = x2 + 1
Misalkan y3 = x3 + 2
Misalkan y4 = x4 - 2.
Karena x4 <= 40, maka y4 <= 38

Tujuan dari pemisalan di atas adalah untuk


mendapatkan y1, y2, y3, y4 yang memenuhi y1 < y2 < y3<
y4.
Alasan kenapa dipilih pemisalan tersebut diserahkan
kepada pembaca untuk dicari sendiri.
Polanya 1,4,10,20,35...,5984 ( C(n+2,3
Kemudian didapatkan Yang diminta adalah 1+4+10+20+...+59
4 <= y1 < y2 < y3 < y4 <= 38.
Sekarang persoalan kita berubah menjadi mencari 4
bilangan (y1, y2, y3, y4) antara 4 sampai 38 yang terurut
menaik. Persoalan ini mirip dengan soal OSK 2016
nomor selanjutnya (7)

Karena ada 35 bilangan diantara 4 sampai 38, dan


dipilih 4 bilangan. Maka solusi dari persoalan ini adalah
35C4 = 52360

7. Dalam sebuah angka yang terdiri dari 6 digit, berapakah banyaknya bilangan yang
semua digitnya berbeda dan harus menaik? (digit pertama tidak boleh 0)
a. 84 b. 504 c. 210 d. 5040 e. 720

Pembahasan:
Anggap aja 6 angka diambil acak lalu diurutkan jadi 9C6 =84

8. Sebuah kunci kombinasi terdiri dari 7 angka. Setiap angka dapat bernilai 0-9.
Angka terakhir selalu lebih besar dari angka-angka sebelumnya. Angka pada setiap
digit selalu berbeda dengan angka pada digit lain. Ada berapa kemungkinan berbeda
kombinasi 7 angka tersebut?
a. 86400 b. 86040 c. 85860 d. 95680 e.15200
Pembahasan:
Bila digit terakhir adalah 9 maka ada 9P6 = 60480 kemungkinan
Bila digit terakhir adalah 8 maka ada 8P6 = 20160 kemungkinan
Bila digit terakhir adalah 7 maka ada 7P6 = 5040 kemungkinan
Bila digit terakhir adalah 6 maka ada 6P6 = 720 kemungkinan
Total: 60480 + 20160 + 5040 + 720 = 86400 (A)

9. Terdapat 2 bilangan, yaitu 720000 dan 262144. Berapa banyak bilangan berbeda
yang membagi habis kedua bilangan tersebut?
a. 7 b. 8 c. 30 d. 31 e. 32

Pembahasan:
720000 = 27 x 32 x 54
262144 = 18
2
FPB = 27
Dengan teori bilangan didapatkan bahwa faktor dari FPB 7+1 = 8

10. Pak Dengklek akan membell sejumlah permen untuk dibaglkan pada tamunya
yang datang di pesta ulang tahunnya. Dia mengetahui akan ada paling banyak 8
tamu yang datang. Karena Pak Dengklek adil, Pak Dengklek akan membagi rata
permen Itu kepada tamu-tamu tersebut. jika semua tamu datang akan tersisa 6
permen. jika 1 tamu tidak datang, akan tersisa 5 permen. jika 3 tamu tidak datang,
akan tersisa 2 permen. Bantulah Pak Dengklek untuk menentukan banyaknya
permen paling sedikit yang harus dibeli:
a. 168 b. 504 c. 202 d. 222 e. 102

Pembahasan:
Simulasikan saja jawaban 222

11. Ali, Lia, dan Budi senang mengikuti kompetisi pemrograman. Karena mereka
tidak suka bersaing, mereka mengikuti kompetisi pemrograman yang berbeda. Ali
mengikuti kompetisi yang berlangsung 7 hari sekali, Lia mengikuti kompetisi yang
berlangsung 3 hari sekali, dan Budi mengikuti kompetisi yang berlangsung 5 hari
sekali. Pada minggu ini, Ali mengikuti kompetisi di hari Senin, Lia mengikuti di hari
Selasa, dan Budi mengikuti di hari Kamis. Tapi karena mereka berkompetisi pada
hari yang tidak sama, mereka merasa kesepian dan mereka menunggu-nunggu satu
hari terdekat dimana mereka bisa berkompetisi pada hari yang sama. Di hari apakah
itu?
a. Senin b. Selasa c. Rabu d. Kamis e. Jumat

Pembahasan:
Karena Ali hanya bisa bertanding pada hari Senin, maka A senin
kita dapat melihat bahwa Ali mengikuti kompetisi yang berlangsung 7 hari sekali
yaitu pada hari Senin.
mereka ingin berkompetisi pada hari yang sama.
jadi, dapat saya simpulkan bahwa Ali, Lia, & Budi dapat bersama - sama
berkompetisi pada hari senin, karena Ali berkompetisi 7 hari sekali.

12. Manakah nilai-nilai A, B, C, D, E yang dapat memenuhi pernyataan


(A and B and C and D) or not E bernilai false?
a. A = true, B = true, C = true, D = true, E = true
b. A = false, B = false, C = false, D = false, E = false
c. A = true, B = false, C = true, D = false, E = true
d. A = false, B = true, C = false, D = true, E = false
e. A = true, B = true, C = true, D = true, E = false

Pembahasan:
Dengan Cara Trial and Error
didapatkan jawaban C
tapi bisa juga menggunakan cara
(A and B and C and D) or Not e = false
artinya
(false) or false = false
not e = false
e = true;
a and b and c and d <> true
jadi jawabannya adalah C

13. A adalah suatu himpunan bilangan prima. B adalah suatu himpunan bilangan
yang jika dibagi dengan 7, memiliki sisa bagi 3. C adalah suatu himpunan yang
merupakan hasil irisan himpunan A dan himpunan B. Berapakah banyak bilangan
antara 1 sampai dengan 100 yang menjadi anggota himpunan C?
a. 4 b. 5 c. 6 d. 7 e. 8

Pembahasan:
A = {2,3,5,7,11,13,14,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97}
B = {3,10,17,24,31,38,45,52,59,66,73,80,87,94}
A B = {3,17,31,59,73}
C = 5 (B)

14. Berapa banyak bilangan antara 100 sampai dengan 1000 (inklusif) yang habis
dibagi 3 atau habis dibagi 5, tetapi tidak habis dibagi 9?
a. 321 b. 421 c. 221 d. 323 e. 423

Pembahasan:
Jumlah angka yang merupakan kelipatan 3 antara 100 sampai dengan 1000 = 300
Jumlah angka yang merupakan kelipatan 5 antara 100 sampai dengan 1000 = 181
Jumlah angka yang merupakan kelipatan 3 dan 5 (atau kelipatan 15) antara 100
sampai dengan 1000 = 60
Jumlah angka yang merupakan kelipatan 9 antara 100 sampai dengan 1000 = 100
Sehingga total bilangan yang mungkin adalah = 300 + 181 - 60 - 100 = 321 (A)

15. Operasi "SWAPBIT" adalah operasi untuk menukar 2 buah bit yang
bersebelahan dalam suatu bilangan biner. Misalkan 0110 dapat diubah dengan 1
SWAPBIT menjadi 1010 atau 0101. Berapa banyak operasi SWAPBIT paling sedikit
yang diperlukan agar membuat bilangan biner 100101010 menjadi bernilai
minimum?
a. 5 b. 7 c. 8 d. 10 e. 11

Pembahasan:
Tinggal menghitung berapa digit angka 0 yang ada di belakang masing-masing digit
angka 1
5 + 3 + 2 + 1 = 11 (E)

16. Ido berulang tahun ke-20 pada hari Kamis, 13 Oktober 2016. Pada hari apakah
Ido lahir?
a. Senin b. Rabu c. Jumat d. Sabtu e. Minggu

Pembahasan:
Tahun kabisat dari 2016 hingga 1996 (2016-20) adalah 2016, 2012, 2008, 2004,
2000 dan 1996
Dari 2016-1996 ada 7300 hari (20x365)
7300 + 6 = 7306 (Di tambah tahun kabisat)
7306 mod 7 = 5, maka akan ada pergesaran mundur 5 hari
5 hari sebelum Kamis adalah Minggu
(E) Minggu

17. Pada sebuah jam analog terdapat jarum panjang dan jarum pendek. Di antara
pukul 3 dan pukul 4, pada pukul berapakah sudut yang dibentuk jarum pendek dan
jarum panjang berharga maksimum (dibulatkan ke menit terdekat)? Catatan:
penghitungan sudut jarum pendek dan jarum panjang pada sebuah jam
menggunakan sudut yang lebih kecil.
a. 3 lebih 45 menit c. 3 lebih 47 menit e. 3 lebih 49 menit
b. 3 lebih 46 menit d. 3 lebih 48 menit

Pembahasan:
Satu lingkaran penuh ada 180. Untuk setiap satu menit pergerakan jarum menit
bertambah 180/(12*5) = 3 derajat. Sedangkan, untuk setiap satu menit, jarum jam
hanya bertambah derajatnya sebanyak 180/(12*60)= 0.25 derajat. Dapat dilihat di
sini, bahwa untuk setiap pertambahan menit, jumlah derajatnya juga akan lebih
cepat naik, sehingga pilihan jawabannya adalah yang meinitnya paling besar, yaitu E

18. Nilai rata-rata suatu kelas pada ujian pelajaran pemrograman adalah 74.
Ternyata ada tambahan satu orang lagi yang mengikuti ujian susulan, sehingga nilai
rata-rata itu menjadi lebih besar dari 75. Jika nilai ujian susulan tersebut adalah 95,
ada berapa siswa paling banyak di kelas tersebut (termasuk satu siswa yang
mengikuti ujian susulan)?
a. 19 b. 20 c. 21 d. 22 e. 23

Pembahasan:
Misal n adalah jumlah siswa di kelas tersebut. ((n-1)74 + 1.95)/n > 75
Total nilai sebelum ditambah siswa baru adalah 74n - 74 + 95 > 75n
: 74(n-1)=74n-74 19>n
Total nilai setelah ditambah siswa baru adalah n=19 .. jika di cocokan
: 74n-74+95=74n + 21 (18.74 + 95)/19 = 75.105 .....
Rata=Rata nilai setelah ditambah siswa baru : maka jawabannya (A)
(74n+21)/n>75 -74+95 = 21, bukan 19
74n+21>75n
n<21
Bilangan terbesar pertama yang kurang dari 21 adalah 20,
sehingga jawabannya adalah B
Maaf, menurut soal rata-rata baru itu bukan sama dengan 75
tetapi lebih besar dari 75
19. Pak Dengklek memiliki mata uang dollar dengan lembar pecahan 100, 50, 20,
dan 10 yang bernilai keseluruhan sebesar 10290 dollar. Berapa banyak lembar
pecahan minimal yang dimiliki Pak Dengklek?
a. 102 b. 104 c. 105 d. 106 e. 111

Pembahasan:
10290 div 100 = 102
10290 mod 100 = 90
90 div 50 = 1
90 mod 50 = 40
40 div 20 = 2
40 mod 2 = 0
Jawaban: 102 + 1 + 2 = 105 (C)
kak harusnya yang pecahan 10 nya harus ada juga :3 jadi ada 106

20. Jika A B, B C, dan C D, manakah pernyataan yang pasti benar?


a. A D b. A C c. B D d. B D
e. C merupakan bilangan terbesar dari 4 bilangan tersebut

Pembahasan:
*koreksi soal:
A >= B, B>=C, C<=D
A >= D
A >= C
B >=D
B <= D
C merupakan bilangan terbesar dari 4 bilangan tersebut
jawabannya B
21. Jehan mempunyai tugas beternak amuba. Menurut informasi gurunya, jenis
amuba ini akan melahirkan 1 amuba baru per menit setelah menit ke-4 sejak
dilahirkan. jenis amuba ini akan melahirkan satu amuba baru. Mula-mula gurunya
memberikan 6 amuba yang baru dilahirkan dan menginstruksikan Jehan untuk
mengamati pertumbuhan amuba per menit selama 1 jam sejak 6 amuba itu
diberikan. Perkembangan amuba seterusnya diilustrasikan pada gambar berikut ini.
Berapakah jumlah amuba pada menit ke-60 sejak 6 amuba pertama mulai hidup jika
tidak ada amuba yang mati?
a. 595038720 c. 595038725 e. 595038728
b. 595038722 d. 595038726

Pembahasan:
Soal ini akan diselesaikan dengan Dynamic Programming.
Misalkan f(n) adalah banyaknya amuba pada menit ke-n.
Kita tahu, banyaknya amuba pada menit ke-n adalah banyaknya amuba pada menit
sebelumnya (n-1) ditambah banyaknya amuba baru. Dimana amuba baru dilahirkan
oleh amuba yang telah berumur minimal 4 menit. Amuba yang berumur minimal 4
menit adalah amuba yang pada menit ke(n-4) ia telah ada, banyaknya ada f(n-4).
Dari sana didapatkan relasi rekursi f(n) = f(n-1) + f(n-4)
f(1) = 6
f(2) = 6
f(3) = 6
f(4) = 6
f(5) = f(4) + f(1) = 6 + 6 = 12
f(6) = f(5) + f(2) = 12 + 6 = 18
f(7) = f(6) + f(3) = 18 + 6 = 24
f(8) = f(7) + f(4) = 24 + 6 = 30
f(9) = f(8) + f(5) = 30 + 12 = 42
f(10) = f(9) + f(6) = 42 + 18 = 60
f(11) = f(10) + f(7) = 60 + 24 = 84
f(12) = f(11) + f(8) = 84 + 30 = 114
f(13) = f(12) + f(9) = 114 + 42 = 156
f(14) = f(13) + f(10) = 156 + 60 = 216
f(15) = f(14) + f(11) = 216 + 84 = 300
f(16) = f(15) + f(12) = 300 + 114 = 414
f(17) = f(16) + f(13) = 414 + 156 = 570
f(18) = f(17) + f(14) = 570 + 216 = 786
f(19) = f(18) + f(15) = 786 + 300 = 1086
f(20) = f(19) + f(16) = 1086 + 414 = 1500
f(21) = f(20) + f(17) = 1500 + 570 = 2070
f(22) = f(21) + f(18) = 2070 + 786 = 2856
f(23) = f(22) + f(19) = 2856 + 1086 = 3942
f(24) = f(23) + f(20) = 3942 + 1500 = 5442
f(25) = f(24) + f(21) = 5442 + 2070 = 7512
f(26) = f(25) + f(22) = 7512 + 2856 = 10368
f(27) = f(26) + f(23) = 10368 + 3942 = 14310
f(28) = f(27) + f(24) = 14310 + 5442 = 19752
f(29) = f(28) + f(25) = 19752 + 7512 = 27264
f(30) = f(29) + f(26) = 27264 + 10368 = 37632
f(31) = f(30) + f(27) = 37632 + 14310 = 51942
f(32) = f(31) + f(28) = 51942 + 19752 = 71694
f(33) = f(32) + f(29) = 71694 + 27264 = 98958
f(34) = f(33) + f(30) = 98958 + 37632 = 136590
f(35) = f(34) + f(31) = 136590 + 51942 = 188532
f(36) = f(35) + f(32) = 188532 + 71694 = 260226
f(37) = f(36) + f(33) = 260226 + 98958 = 359184
f(38) = f(37) + f(34) = 359184 + 136590 = 495774
f(39) = f(38) + f(35) = 495774 + 188532 = 684306
f(40) = f(39) + f(36) = 684306 + 260226 = 944532
f(41) = f(40) + f(37) = 944532 + 359184 = 1303716
f(42) = f(41) + f(38) = 1303716 + 495774 = 1799490
f(43) = f(42) + f(39) = 1799490 + 684306 = 2483796
f(44) = f(43) + f(40) = 2483796 + 944532 = 3428328
f(45) = f(44) + f(41) = 3428328 + 1303716 = 4732044
f(46) = f(45) + f(42) = 4732044 + 1799490 = 6531534
f(47) = f(46) + f(43) = 6531534 + 2483796 = 9015330
f(48) = f(47) + f(44) = 9015330 + 3428328 = 12443658
f(49) = f(48) + f(45) = 12443658 + 4732044 = 17175702
f(50) = f(49) + f(46) = 17175702 + 6531534 = 23707236
f(51) = f(50) + f(47) = 23707236 + 9015330 = 32722566
f(52) = f(51) + f(48) = 32722566 + 12443658 = 45166224
f(53) = f(52) + f(49) = 45166224 + 17175702 = 62341926
f(54) = f(53) + f(50) = 62341926 + 23707236 = 86049162
f(55) = f(54) + f(51) = 86049162 + 32722566 = 118771728
f(56) = f(55) + f(52) = 118771728 + 45166224 = 163937952
f(57) = f(56) + f(53) = 163937952 + 62341926 = 226279878
f(58) = f(57) + f(54) = 226279878 + 86049162 = 312329040
f(59) = f(58) + f(55) = 312329040 + 118771728 = 431100768
f(60) = f(59) + f(56) = 431100768 + 163937952 = 595038720
Jawaban : A
karena di pilihannya hanya beda satuan, dan untuk setiap menit jumlah amoeba
selalu habis dibagi 6. soal dapat diselesaikan dengan menguji setiap opsi dengan
teori keterbagian.
dari seluruh opsi, bilangan genap dan dapat dibagi 3 hanya opsi (A).

Deskripsi untuk soal nomor 22 - 23


Rina sedang bermain dengan string (deretan) huruf. Aturan permainannya adalah
sebagai berikut. Pada satu kali permainan pemain memilih sebuah string.
Selanjutnya setiap huruf akan diganti dengan string tertentu, misalnya setiap huruf A
diganti dengan AB dan setiap huruf B diganti dengan A. Jika permainan dilakukan
lebih dari satu kali, pergantian dilakukan pada hasil sebelumnya menggunakan
aturan pergantian yang sama. Misalkan Rina memilih string "BAABA" dan bermain 1
kali, maka string itu akan berubah menjadi "AABABAAB". Jika bermain 2 kali, maka
string itu akan berubah menjadi "ABABAABAABABA".

22. Dengan peraturan A diganti dengan AB dan B diganti dengan A, berapa


panjang string hasil setelah dilakukan 10 kali permainan dengan string awal adalah
A?
a. 90 b. 55 c. 144 d. 89 e. 88

Pembahasan:
String awal = "A"
f(0) = 1 (A)
f(1) = 2 (AB)
f(2) = 3 (ABA)
f(3) = 5 (ABAAB)
f(n) = f(n-1)+f(n-2)
f(10) = f(9) + f((8)
f(9) = 89
f(8) = 55
f(10) = 89+55 = 144 (C)

23. Rina melakukan permainan yang sama dengan soal sebelumnya dan dia
menemukan secarik kertas di meja bertuliskan
"ABABBBABABBBBBBBBBABABBBABA". Dia ingat bahwa itu adalah string hasil
permainan yang pernah dilakukannya dengan string awal dan peraturan yang
berbeda (seperti soal sebelumnya). Tapi dia lupa string awalnya apa dan
peraturannya apa, yang hanya dia ingat adalah dia melakukan permainan sebanyak
3 kali. Rina meminta kalian mencari string awal dan peraturan penggantian untuk
menghasilkan string yang ditemukan di meja tersebut!
a. string awal: B, peraturan: (A diganti dengan AAA, B diganti dengan BAB)
b. string awal: ABA, peraturan: (A diganti dengan BAB, B diganti dengan ABA)
c. string awal: BA, peraturan: (A diganti dengan BA, B diganti dengan AB)
d. string awal: AB, peraturan: (A diganti dengan BA, B diganti dengan AB)
e. string awal: A, peraturan: (A diganti dengan ABA, B diganti dengan BBB)

Pembahasan:
f(3)=27
simulasi aja. Kalau instingiku itu bilangan 3 n
jadi f(n)=3n
f(0) = 1
f(1) = 3
f(2) = 9
Kemungkinan jawaban di sini hanya ada A & E
Untuk pilihan A String Awal tidak mungkin = "A" karena string awal: B, peraturan:
(A diganti dengan AAA, B diganti dengan BAB)
Hanya akan membentuk pola awalan dengan string adalah "B" contoh f(1) = BAB
Jadi Jawabannya adalah E

24. Anthony ingin bermain sulap. Dia memiliki 10 kandang burung dengan kapasitas
maksimal masing-masing 5 burung. Dia menyediakan beberapa burung dan
meminta seorang penonton memasukkan semua burung tersebut ke dalam
kandang-kandang tanpa dilihat oleh Anthony. Berapakah burung yang harus
disediakan Anthony supaya dia bisa dengan pasti mengatakan dengan yakin bahwa
"Setidaknya pasti ada 3 kandang yang berisi 2 burung!"?
a. 8 b. 13 c. 14 d. 19 e. 20

Pembahasan:
Kemungkinan terburuk :
5 5 2 1 1 1 1 1 1 1
Minimal ada 19 burung (D)

Deskripsi untuk soal nomor 25 - 27


Di Kota TOKI terdapat tempat yang berbentuk segi-7 beraturan. Masing-masing titik
pada segi-7 tersebut harus diwarnai salah satu dari 7 warna yaitu: merah, jingga,
kuning, hijau, biru, nila, dan ungu.

Pemberian warnanya mengikuti aturan sebagai berikut :


kuning tidak boleh bersebelahan dengan hijau.
biru harus berada 3 titik disebelah kiri nila.
hijau harus berada tepat disebelah merah (boleh sebelah kiri maupun sebelah
kanan).
jingga tidak boleh ditempatkan bersebelahan dengan biru maupun nila.
ungu harus berada 3 titik dari biru.
merah harus berada pada 2 titik dari ungu.

25. Manakah yang benar dari pernyataan berikut?


a. Ungu dan Nila berjarak sebanyak 3 titik.
b. Jingga dan merah berjarak sebanyak 3 titik
c. Hijau dan Kuning berjarak sebanyak 3 titik
d. Ungu dan Nila berjarak sebanyak 2 titik.
e. Kuning dan Merah berjarak sebanyak 2 titik

Pembahasan:
susunan nya nila
merah ungu
hijau jingga
kuning biru
(anggap saja itu segi 7 beraturan )
pernyataan yang benar := B. jingga dan merah berjarak 3 titik

26. Warna apakah yang berada tepat sebelah kiri jingga?


a. merah b. hijau c. biru d. ungu e. kuning

Pembahasan: tepat sebelah kiri jingga := D. ungu

27. Apabila pernyataan "merah harus berada pada 2 titik dari ungu" dihapus, warna
apa saja yang mungkin berada tepat sebelah kiri nila?
a. Merah atau Biru c. Hijau Saja e. Merah atau Hijau
b. Biru atau Hijau d. Merah Saja
Pembahasan: E. hijau / merah

28. Ali, Badu dan Cica adalah tiga bersaudara (tidak kembar) dan Ali adalah yang
tertua dan Cica adalah yang termuda. Hasil kali umur-umur mereka adalah 135.
Ketiga orang tersebut belum berumur 10 tahun. Berapakah hasil perkalian umur Ali
dan Badu?
a. 9 b. 5 c. 45 d. 15 e. 27

Pembahasan:
misalkan
A = umur Ali
B = umur Badu, dan
C = umur Cica
dari soal, kita dapat kan bahwa A > B > C, A,B,C < 10, dan A*B*C = 135
pemfaktoran dari 135, kita mendapatkan (33 * 5) (3*3 , 5, 3) = (9,5,3)
jadi, A=9, B=5, C=3. A*B = 45 (C)

Deskripsi untuk soal nomor 29 - 31


Pada suatu ketika di kebun Pak Dengklek sedang berkumpul berbagai macam
binatang. Binatang tersebut ada yang berkaki satu, ada yang berkaki tiga, dan ada
yang berkaki lima. Diketahui bahwa jumlah seluruh binatang adalah 52 ekor, jumlah
seluruh kaki dari binatang berkaki satu dan tiga adalah 88, dan jumlah seluruh kaki
dari binatang berkaki tiga dan lima adalah 106.

29. Berapakah jumlah seluruh kaki yang ada?


a. 160 b. 128 c. 138 d. 140 e. 156

Pembahasan: Jumlah Kaki = X+3Y+5Z = 22+66+40=128

30. Berapa banyaknya binatang berkaki satu?


a. 20 b. 22 c. 30 d. 32 e. 40
Pembahasan:
Misal : Subtitusi X pada Pers. 2 Ke Pers. 1 :
Binatang berkaki Satu : X 88-3Y+Y+Z=52 -> Z=-36+2Y (Pers.4)
Binatang berkaki Tiga: Y Subtitusi Z pada Pers. 4 Ke Pers. 3 :
Binatang berkaki Lima : Z 3Y-180+10Y=106 -> 13Y=286 -> Y=22

Diketahui : X+3Y=88 -> X+66=88 -> X=22


X+Y+Z=52 (Pers. 1)
X+3Y=88 -> X=88-3Y (Pers. 2)
3Y+5Z=106 (Pers. 3)

31. Berapa banyaknya binatang berkaki lima?


a. 8 b. 10 c. 18 d. 20 e. 22

Pembahasan: 3Y+5Z=106 -> 66+5Z=106 -> 5Z = 40 -> Z=8

Deskripsi untuk soal nomor 32 - 34


Sebuah keluarga besar, terdiri dari 9 orang: A, B, C, D, E, F, G, H, I. Diketahui
beberapa fakta sebagai berikut:
A adalah ayah dari E
E adalah bibi dari D
I adalah keponakan dari F
H adalah nenek dari G dan ibu dari E.
B adalah paman dari G dan suami C.
A, H, E, dan F, sudah menikah, dan pasangannya merupakan salah satu dari 9
anggota keluarga tersebut (pasangan merupakan suami istri).

32. Siapakah Istri A?


a. B b. I c. H d. F e. G
Pembahasan: (C) H

33. Siapa yang dapat dipastikan adalah seorang perempuan?


a. F b. G c. C d. D e. I
Pembahasan: (C) C

34. Siapa yang merupakan anak tunggal?


a. G b. E c. D d. C e. I
Pembahasan: (A) G

35. Suami dari E adalah ...


a. A b. B c. C d. F e. H
Pembahasan: (D) F

36. Terdapat 5 katak A, B, C, D, dan E yang masing-masing berusia berturut-turut 7


minggu, 8 minggu, 9 minggu, 10 minggu, dan 11 minggu.

Mereka akan melompat dari suatu daun teratai ke daun teratai lainnya. Mereka telah
meletakkan beberapa panah diantara daun, dan mereka semua memulai pada sisi
kiri seperti pada gambar.Ketika seseorang melompat ke suatu daun, dia menunggu
sampai ada katak lain yang datang ke daun tersebut. Kemudian diantara dua katak
pada daun tersebut, katak yang lebih tua akan melompat ke katak lain mengikuti
panah yang tebal, sedangkan yang lebih muda mengikuti panah yang tipis.
Bagaimanakah posisi akhir mereka pada sisi kanan dari gambar di atas (dari paling
atas)?
a. B C D A E c. B D C E A e. A B C D E
b. B D C A E d. B C D E A

Pembahasan: B-D-C-A-E (B)

37. Bu Dengklek sedang ingin mempersiapkan dua makanan, dan kedua makanan
tersebut terbuat dari 4 bahan yang sama yaitu daging, tomat, ikan dan wortel.
Pertama, Bu Dengklek harus memasak ikan dan wortel secara bersamaan dan
membutuhkan waktu 5 menit (S1). Kemudian Bu Dengklek memasak daging dan
tomat bersamaan dan membutuhkan waktu 5 menit (S2). Kemudian hasil dari daging
dan tomat tersebut dibagi menjadi tiga bagian (S9, S5, S4). Untuk proses S4, Bu
Dengklek menggabungkan hasil dari S2 dan S1 dan memprosesnya selama 5
menit. Begitu seterusnya sampai makanannya jadi, dan setiap proses itu
membutuhkan waktu 5 menit. Tentulah bisa saja dua proses berjalan bersamaan,
dan waktu total untuk menyelesaikan kedua makanan itu menjadi lebih singkat.
Berapakah waktu minimum yang diperlukan Bu Dengklek untuk menyelesaikan
masakannya
a. 20 menit b. 15 menit c. 30 menit d. 25 menit e. 55 menit

Pembahasan:
Terdapat 11 proses dan 2 proses bisa dilakukan bersamaan, serta setiap proses
dibutuhkan waktu 5 menit. Sehingga waktu minimum yang dibutuhkan adalah:
ceil(11/2) * 5 = ceil(5.5) * 5 = 6 * 5 = 30 (C)

38. Pak Dengklek ingin membawa belanjaannya dari pasar ke rumahnya hanya
melalui suatu jaringan jalan tol. Pada setiap ruas jalan tol ia harus membayar
sejumlah uang yang ditunjukkan dengan angka-angka pada gambar berikut.

Ia ingin memilih lintasan dengan biaya yang paling minimum. Berapa biaya minimum
yang harus disediakan Pak Dengklek untuk sampai ke rumahnya?
a. 17 b. 18 c. 19 d. 20 e. 21

Pembahasan:
gunakan Greedy untuk memecahkan soal ini, jalur yang paling minimum adalah (3-
2-11-3) = 19 (C)

Istilah Greedy sepertinya kurang tepat. Karena berdasarkan definisi, Greedy akan
mengambil pilihan terbaik (saat ini) untuk setiap langkah. Sehingga pada langkah
pertama (kalau Greedy) akan memilih jalan dengan panjang 2, karena paling pendek
diantara pilihan lain.
Jawaban benar, namun menurut saya sebaiknya tidak menggunakan istilah Greedy.
Takut menyesatkan. Hehehe
yang diminta adalah biaya minimum, diperoleh 19.

Deskripsi untuk soal nomor 39 - 40


Terdapat suatu permainan Grid berbentuk petak-petak yang tersusun 3x3 yang
dilengkapi dengan 4 tombol, dengan bentuk seperti seperti pada Gambar 1. Jika
sebuah tombol ditekan, angka-angka pada keempat petak di sekelilingnya akan
berputar searah jarum jam. Susunan pada Grid 1 akan ditulis per baris sebagai
berikut 1-4-5;7-3-2;8-9-6.

Contoh: diberikan susunan semula seperti pada Grid 2, jika tombol A ditekan maka
agka-angka pada petak menjadi seperti pada Grid 3.

39. Jika dari susunan pada Grid 1, kemudian dilakukan penekanan tombol A dua kali
dan kemudian tombol C satu kali, maka susunannya akan menjadi (urutan ditulis
dari kiri ke kanan
a. 3-7-5;4-6-9;8-2-1 c. 4-1-3;5-2-6;7-8-9 e. 1-2-3;4-9-8;7-6-5
b. 3-7-5;4-9-1;8-6-2 d. 1-2-3;4-5-6;7-8-9

Pembahasan:
setelah melalui 3 kali penekanan. susunannya berubah menjadi 3-7-5;4-9-1;8-6-2.

40. Berapa penekanan tombol minimal (tombol apa saja) yang diperlukan untuk
menyusun susunan angka pada Grid 2 menjadi susunan pada Grid 1 di atas?
a. 3 b. 4 c. 5 d. 6 e. 7

41. Apa keluaran program diatas?


var
arr : array[1..30] of longint = (5,5,7,8,6,8,5,8,4,6,6,3,4,
2,8,0,9,2,3,4,7,8,5,4,5,3,9,8,0,3);
i, c : longint;
begin
c := 0;
for i:=1 to length(arr) do begin
inc(c, arr[i]);
end;
writeln((c/length(arr)):0:2);
end.

a. 3.17 b. 4.17 c. 5.17 d. 6.17 e. 7.17

Pembahasan:
Itu mungkin jumlah semua data di bagi dengan panjang data arr
jadi jumlah data [1] - data [30] / 30 = 155/30 = 5.1666666666667 karena yang
dipakai 2 angka dibelakang koma jadinya 5.17

Deskripsi untuk soal nomor 42 - 43


var
i, n, c : longint;
begin
readln(n);
c := 0;
for i := 1 to n do begin
inc(c, i);
end;
writeln(c);
end.

42. Apakah output program di atas apabila masukan n bernilai 10?


a. 10 b. 45 c. 55 d. 65 e. 76

Pembahasan:
mungkin sama dengan yang nomer 41 .. itu juga pertambahan dari semua nilai i,
maka 1+2+3... +10
pakai prinsip 1+10 + 2+9... 5+6 maka akan menjadi 11 x 5 = 55 (C)

43. Apakah output program di atas apabila masukan n bernilai 1000?


a. 1000 b. 5500 c. 5550 d. 505000 e. 500500

Pembahasan:
1+2+3 ...... +1000
pakai prinsip 1000+1 = 1001 * 1000/2 = 1001*500 = 500500 (E)

44.
var
i, j, n, r, c, d : longint;
begin
readln(n, r);
c := 0;
for i := 1 to n do begin
d := 1;
for j := 1 to i do begin
d := d * r;
end;
inc(c, d);
end;
writeln(c);
end.
Jika diberi input 20 2, maka outputnya adalah?
a. 1048576 c. 1048575 e. 2097151
b. 2097152 d. 2097150

Pembahasan:
program bakal melaksanakan penjumlahan deret geo dari 2^1 ... 2^20
i:= 1 to n
setiap i bakal ngelaksanain sebanyak i kali => r^i
berhubung n itu 20 dan r itu 2 maka
=> 2(2^20 - 1 ) / 2-1
=> 2(1048575)/1
=> 2097150 (D)

45.
function tis(a : integer) : longint;
begin
if(a < 10) then tis := a
else tis := tis(a div 10) * 3 + tis(a div 50);
end;
Berapakah hasil dari pemanggilan fungsi tis(143)?
a. 8 b. 9 c. 10 d. 11 e. 12

Pembahasan:
Tis(143) a= 143
143>10 maka tis(143 div 10) * 3 + tis(143 div 50)
= tis(14)*3 + tis(2)
karena tis(14) 14>10 maka
tis(14 div 10) * 3 + tis(14 div 50)
tis(1) * 3 + tis(0)
karena semuanya tis a<10 maka tis(a) = a
jadi 1*3 + 0 = 3
masukan 3 ke tis(!4)
3*3 + 2 = 11 (D)

46.
const
MAXS = 10;
var
i, n : integer;
A : array[1..10] of integer;
procedure klik();
begin
dec(i);
end;
function klek(x : integer) : integer;
begin
if(x = MAXS) then klek := A[x] * A[1]
else klek := A[x] * A[x+1];
end;
function klok() : integer;
var
tmp : integer;
begin
if(i = 0) then klok := i
else begin
tmp := i;
klik();
klok := klok() + klek(tmp);
end;
end;
begin
A[1] := 1; A[2] := 2; A[3] := 3; A[4] := 4; A[5] := 5;
A[6] := 6; A[10] := 11; A[9] := 9; A[7] := 8; A[8]:=7;
read(n);
i := n;
writeln(klok());
end.

Apakah output program di atas jika diberi input 8?


a. 240 b. 235 c. 237 d. 330 e. 327

Pembahasan:
Program diatas memiliki makna yang sama dengan fungsi berikut:

Bila kita masukkan nilai x = 8 maka:


f(8) = A[1]*A[2] + A[2]*A[3] + A[3]*A[4] + A[4]*A[5] + A[5]*A[6] + A[6]*A[7] +
A[7]*A[8] + A[8]*A[9]
= 1*2 + 2*3 + 3*4 + 4*5 + 5*6 + 6*8 + 8*7 + 7*9 = 237 (C)

Deskripsi untuk soal nomor 47 - 48


a := 13; b := 1;
while(a < n) do
begin
a := a + b;
b := b + 1;
end;
writeln(a, ' ', b);

47. Dari pilihan berikut ini, berapakah nilai n yang TIDAK membuat nilai a di akhir
adalah 79?
a. 68 b. 69 c. 70 d. 71 e. 72
Pembahasan:
program a mengalami penambahan +1 +2 +3 dst sampai nilai a >= n
jadi N:= 79
a = 13 .... 68 79
jawabanya := A. 68

48. Berapakah nilai n maksimum yang membuat nilai b di akhir bernilai 15?
a. 134 b. 133 c. 119 d. 118 e. 117

Pembahasan:
b:= 15
a = 13
a akhir = 13 + 1+...+14= 118
jadi nilai n haruslah := n <=118
berhubung dipilihan nilai max yang memenuhi persamaan adalah 118

Deskripsi untuk soal nomor 49 - 50


function
begin
if y = 0 then naon := 1
else if y = 1 then naon := x
else naon := naon(x, y div 2) * naon(x, y div 2 ) * naon(x, y
mod 2);
end;

49. Berapakah hasil dari naon(3, 8)?


a. 11 b. 24 c. 6561 d. 512 e. 81

Pembahasan:
(3,8) => (3,4)*(3,4)*(3,0) => 81*81*1 => 6561 (C)
(3,4) => (3,2)*(3,2)*(3,0) => 9*9*1 => 81
(3,2) => (3,1)*(3,1)*(3,0) => 3*3*1 => 9

50. Berapa kalikah fungsi naon dipanggil pada pemanggilan naon(4, 13)?
a. 13 b. 15 c. 20 d. 21 e. 22

Pembahasan:
(4,13) => hasilnya 21 + 1 [manggil dirinya sendiri yaitu (4,13) => 22 (E) jawaban
nomor 50
(4,13 ) => (4,6) (4,6) (4,1) => 7*2 + 1 => 9*2 [ (4,6) ada dua dan setiap (4,6) bakal
manggil 9 naon] + 3 ( manggil dirinya sediri ) => 21
(4,6) => (4,3) (4,3) (4,0) => 3*2 [ (4,3) ada 2 nah setiap (4,3) bakal manggil 3 naon] +
3 ( manggil dirinya sendiri ) => 9
(4,3) => (4,1) (4,1) (4,1) => 3 ( manggil dirinya sendiri )
#setiap (4,1) dan (4,0 ) tidak akan memanggil fungsi naon lain, melainkan langsung
menghasilkan nilai x atau 1

Anda mungkin juga menyukai