Bantu temanmu belajar dengan menambahkan soal di Kujawab. Klik disini..

Olimpiade Sains Kota (OSK) 2019 - Komputer

1

Ada berapa bilangan bulat prima atau genap antara 1 sampai 100 (inklusif) yang tidak dapat dibagi 5?
a. 63
b. 64
c. 65
d. 66
e. 67

2

Angka yang menempati digit satuan dari 21100 - 25100 + 29100 - 33100 adalah:
a. 0
b. 2
c. 3
d. 6
e. 8

3

1, 121, 1331, 12321 merupakan contoh bilangan palindrome. Hitunglah banyaknya bilangan palindrome dari 1 sampai 10000 (inklusif)
a. 194
b. 195
c. 196
d. 198
e. 200

4

Ada 7 orang yang ingin pergi ke bioskop. Sebut mereka A, B, C, D, E, F dan G. Mereka duduk bersebelahan, namun terdapat aturan mengenai posisi duduk sebagai berikut:

  • A tidak ingin duduk di sebelah B
  • C ingin duduk di sebelah D
  • E ingin duduk di pojok kiri
  • F tidak ingin duduk di sebelah E

Berapa banyak urutan duduk agar semua keinginan mereka terpenuhi?
a. 72
b. 96
c. 120
d. 144
e. 16810

5

Bilangan Harshad didefinisikan sebagai bilangan yang habis dibagi oleh hasil penjumlahan setiap digit dari bilangan itu sendiri. Contohnya bilangan 18, karena 18 habis dibagi oleh 9. Ada berapa banyak bilangan Harshad dari 1 sampai 50?
a. 20
b. 21
c. 22
d. 23
e. 24

6

Terdapat sebuah papan berukuran 3x3. Dalam papan tersebut akan diisi dengan tepat 1 angka diantara angka 1, 2, dan 3. Papan tersebut dikatakan Cahyaid jika untuk setiap barisnya tidak ada angka yang sama dan untuk setiap kolomnya juga tidak terdapat angka yang sama. Pak Dengklek memilih 6 dari 9 petak tersebut secara acak dan mengisi petak-petak tersebut dengan 3 buah angka 1 dan 3 buah angka 2. Berapakah peluang bahwa terdapat suatu cara pengisian untuk papan tersebut sehingga papan tersebut menjadi Cahyaid?
a. 1/7
b. 2/7
c. 3/7
d. 4/7
e. 5/7

7

3 buah dadu dengan 8 sisi. Dadu pertama berisi angka dari 1-8, dadu kedua berisi angka dari 3-10, dan dadu ketiga berisi angka dari 5-12. Ketiga dadu tersebut akan dilempar secara bersamaan. Berapakah peluang jumlah dari ketiga dadu tersebut adalah 16?
a. 1/128
b. 9/128
c. 25/128
d. 49/128
e. 81/1285

8

Bilangan ajaib adalah bilangan yang memiliki jumlah faktor yang menyisakan 1 apabila dibagi 4, sebagai contoh adalah angka 1, 1 memiliki 1 buah faktor (yaitu 1). Untuk kesekian kalinya, pak Dengklek ingin meminta tolong kalian untuk menghitung ada berapa banyak bilangan ajaib yang berada diantara 1 dan 300 inklusif. Ada berapakah bilangan ajaib yang ingin diketahui pak Dengklek?
a. 9
b. 5
c. 2
d. 4
e. 8

9

Pak Dengklek sangat suka makan bakso. Oleh karena itu, pada suatu hari ia berpikir jika ia ingin memotong sebuah bakso sebanyak 3 kali, berapa paling banyak jumlah potongan yang bisa ia dapat?
a. 5
b. 6
c. 7
d. 8
e. 9

10

Terdapat sebuah grid berukuran 50x5, dengan petak pojok kiri atas bernomor (1,1) dan pojok kanan bawah bernomor (50,5). Pak Dengklek saat ini sedang ada di petak (1, 1) dan ingin pergi ke petak (50,5). Jika ia hanya bisa pindah sebanyak 1 petak ke kanan atau 1 petak ke bawah pada setiap langkahnya, ada berapa banyak cara untuk Pak Dengklek melakukan perjalanan tersebut tanpa melalui petak (25,3)?
a. 178750
b. 64675
c. 114075
d. 292825
e. 90000

11

Kisah ini mengenai kehidupan masa lalu Pak Dengklek di zaman Paleolitikum. Pada saat itu diketahui beberapa hal:

  • Orang yang bisa membunuh hewan pasti pandai mengasah batu.
  • Orang yang hidup nomaden (berpindah-pindah) bisa makan sayur-sayuran.
  • Setiap orang pasti suka makan sayur atau daging.
  • Reaksi orang terhadap suatu jenis makanan hanya suka atau tidak suka.
  • Orang yang membunuh hewan suka makan daging.
  • Orang yang tidak punya rumah pasti hidupnya nomaden.
  • Orang yang tidak suka makan sayur pasti tinggal menetap di hutan untuk berburu.

Diketahui bahwa Pak Dengklek saat itu tidak punya rumah dan suka makan daging. Terdapat 3 pernyataan sebagai berikut:

  1. Pak Dengklek pandai mengasah batu.
  2. Pak Dengklek suka makan sayur-sayuran.
  3. Pak Dengklek hidup di darat

Pernyataan yang pasti benar adalah:
a. Tidak ada
b. 1 dan 2
c. 2
d. 1 dan 3
e. Semua Benar

12

Nilai yang menyebabkan pertanyaan dibawah ini bernilai TRUE adalah:

(P and ((not P or not(Q or (not R and Q))) and (P and (Q or not R))))

a. P=False, Q=True, R=False
b. P=True, Q= True, R=False
c. P=True, Q=False, R=False
d. P=True, Q=True, R=True
e. Tidak mungkin pernyataan di atas bernilai benar Hari ini libur

13

Bujur sangkar Pascal merupakan penjumlahan elemen-elemen yang berada di tengah tiap baris di segitiga Pascal, perhatikan gambar untuk lebih jelasnya. BP(n) artinya kita menghitung jumlah elemen tengah di baris ke-n, ke-n-1, dan ke-n-2. Maka nilai dari BP(15) adalah.

BP(7) = 6+10+10+20 = 46

BP(6) = 3+3+6+10+10 = 22


a. 8746
b. 9374
c. 4356
d. 7788
e. 5938

14

Bilangan-bilangan 1, 2, 3, ... , 15, 16 disusun pada persegi 4 x 4. Untuk i = 1, 2, 3, 4, misalkan bi adalah jumlah bilangan-bilangan pada baris ke-i dan ki adalah jumlah bilangan-bilangan pada kolom ke-i. Misalkan pula d1 dan d2 adalah jumlah bilangan-bilangan pada kedua diagonal. Susunan tersebut dapat disebut Antimagic jika b1, b2, b3, b4, k1, k2, k3, k4, d1, d2 dapat disusun menjadi sepuluh bilangan berurutan. Tentukan bilangan terbesar di antara sepuluh bilangan berurutan tersebut yang dapat diperoleh dari sebuah Antimagic.
a. 38
b. 39
c. 40
d. 41
e. 42

15

Diketahui himpunan kosong A dan B yang dapat ditambahkan bilangan bulat dari i dengan 1 <= i <= 30. Bilangan i akan dimasukkan ke himpunan A dan B dengan syarat berikut.

  • Bilangan yang telah dimasukkan ke himpunan yang satu tidak dapat dimasukkan ke himpunan bilangan lainnya.
  • Hasil perkalian dua bilangan yang berada di himpunan yang sama setelah dimodulo 31 akan selalu menghasilkan bilangan yang berada di himpunan A.
  • Hasil perkalian dua bilangan yang berada di himpunan yang saling beda setelah dimodulo 31 akan selalu menghasilkan bilangan yang berada di himpunan B.
  • Bilangan 1 berada di himpunan A

Maka banyaknya anggota himpunan A dan B berturut-turut adalah:
a. 11 dan 19
b. 12 dan 18
c. 13 dan 17
d. 14 dan 16
e. 15 dan 15

16

16. Kwak bertanya pada 120 orang untuk menebak sebuah angka yang merupakan permutasi dari 12345 yang sedang dipikirkannya. Setiap orang mencoba menebak permutasi yang benar. 10 orang menebak sebuah permutasi dan berbeda dengan yang dipikirkan oleh Kwak dalam 5 tempat (contoh apabila angka yang dipikirkan Kwak adalah 54321, kemudian seseorang menebak 12435, maka orang tersebut salah dalam 5 tempat). 45 orang menebak sebuah permutasi dan berbeda dengan yang dipikirkan oleh Kwak dalam 4 tempat. 45 orang menebak dan berbeda dalam 3 tempat. 15 orang menebak dan berbeda dalam 2 tempat. M merupakan bilangan yang menyatakan banyaknya orang yang berhasil menebak angka yang
dipikirkan oleh Kwak dengan benar (tidak ada tempat yang salah), dan N merupakan bilangan yang menyatakan banyaknya orang yang menebak sebuah permutasi dan berbeda dengan yang dipikirkan oleh Kwak dalam 1 tempat. Berapakah nilai M-N?
a. 5
b. 3
c. 2
d. 1
e. 0

17

Berkaitan dengan soal nomor 16, berapa banyak kemungkinan susunan permutasi yang berbeda dan tidak ada digit yang benar penempatannya (berbeda dalam 5 tempat)?
a. 119
b. 60
c. 44
d. 24
e. 10

18

Sebuah bus sedang beroperasi dengan mengangkut kurang dari 100 penumpang. Pada pemberhentian A, terdapat tepat 3/4 dari penumpang yang ada di dalam bus turun dan 7 penumpang baru naik ke dalam bus. Hal yang sama terjadi juga pada dua perhentian berikutnya, yaitu perhentian B dan C. Berapa banyak penumpang yang turun pada perhentian C?
a. 6
b. 7
c. 8
d. 9
e. 10

19

Pak Dengklek sedang memimpin proyek pembangunan jalan di negara A, yang berjumlah 13 kota dengan rencana pembangunan 32 jalan. Suatu hari, Pak Dengklek harus pergi menemui istrinya di Indonesia dan meninggalkan untuk sementara waktu proyeknya. Presiden negara A ingin mengetahui berapa jalan antar kota yang sudah selesai, untuk membayar sementara Pak Dengklek, dengan peta sebagai berikut.

Dengan angka angka di dalam kota melambangkan banyaknya jalan yang menghubungkan kota tersebut dengan kota lain, tentukanlah berapa banyak jalan yang sudah jadi.
a. 11
b. 13
c. 16
d. 18
e. 26

20

Di hari ulang tahun Kwak, dia mengadakan permainan “Putaran Permen.” Permainan tersebut adalah sebagai berikut, misalnya ada 10 orang yang ikut, termasuk Kwak. Mereka semua melingkar, dengan Kwak selalu di posisi pukul 12. Kwak yang membawa permen dengan jumlah yang sangat besar akan membagikannya kepada teman-temannya. Dimulai dari Kwak, mereka akan berhitung dari 1 (satu) hingga 2 (dua). Setiap orang yang berhitung 2 (dua) akan mendapatkan 1 (satu) buah permen, tapi setelah itu harus keluar dari lingkaran. Hal tersebut terus dilakukan hingga tersisa 1 (satu) orang, dan orang tersebut akan mendapatkan sisa permen yang tersedia. Dalam kasus 10 orang, maka orang ke-5 (Kwak adalah orang bernomor 1) yang akan mendapatkan sisa permen. Jika ada 65000 orang, maka orang nomor berapakah yang akan mendapatkan sisa permen?
a. 64233
b. 64465
c. 64464
d. 32233
e. 32232

21

Terdapat 4 sahabat, yaitu Ali, Badu, Cahya, dan Didi. Seorang di antara mereka selalu jujur dan seorang lainnya selalu berbohong. Sedangkan, dua orang lainnya bisa berbohong ataupun berkata jujur. Masing-masing dari mereka mengeluarkan sebuah kalimat berisi 1 atau 2 pernyataan yang seluruhnya jujur atau bohong seluruhnya (bila pertanyaan pertama jujur, maka pernyataan kedua juga jujur; bila pertanyaan pertama bohong, maka pernyataan kedua juga bohong)

Ali: “Badu selalu berbohong dan Cahya selalu jujur”
Didi: “Tidak, Badu selalu jujur dan Cahya selalu berbohong”
Badu: “Walau Ali tidak selalu berbohong, yang barusan ia katakan itu bohong”
Cahya: “Tidak, kalian semua berbohong”

Dari pernyataan di atas, siapa 2 orang di antara mereka yang terkadang bohong dan terkadang jujur?
a. Ali dan Didi
b. Ali dan Cahya
c. Didi dan Cahya
d. Didi dan Badu
e. Badu dan Cahya

22

Pada ulang tahunnya yang ke 67 tahun depan, pak Dengklek ingin mengundang sedikit mungkin orang sehingga paling tidak ada 67 orang yang berulang tahun pada hari yang sama. Berapakah orang yang harus ia undang untuk pestanya? (diasumsikan pada setiap tahun hanya ada 365 hari)
a. 67
b. 23431
c. 24091
d. 23429
e. 24090

23

Pada suatu hari, Pak Chanek ingin meminjam uang Pak Dengklek. Tetapi, karena Pak Chanek terlalu sering meminjam uang, Pak Dengklek memberikan sebuah ujian.

  • Pak Dengklek: “Kamu harus mencari tahu 3 bilangan yang sedang aku pikirkan. Perkalian dari ketiganya adalah 140. Bilangan terbesarnya adalah bilangan favoritku.”
  • Pak Chanek: “Aku tahu bilangan favoritmu, tapi aku masih belum tahu apa ketiga bilangan tersebut.”
  • Pak Dengklek: “Jumlah dari 2 bilangan terkecil adalah bilangan genap.”
  • Pak Chanek: “Oh, sekarang aku tahu.”

Berapakah penjumlahan dari ketiga bilangan tersebut?
a. 41
b. 39
c. 34
d. 28
e. 21

24

Untuk hadiah ulang tahun pak Dengklek, pak Ganesh ingin memberikan beberapa barisan yang sangat unik. Diantaranya adalah:

  • 1, 2, 3, 4, 5, 6, ....
  • 1, 4, 9, 16, 25, 36, ....
  • 1, 2, 6, 24, 120, ....
  • 1, 4, 18, 96, ....

Seketika pak Dengklek berkata ke pak Ganesh “Barisan apakah yang kamu berikan kepadaku bung?”. Pak Ganesh pun menjawab, “Saya tidak akan memberitahumu sebelum kamu menemukan suku ke-6 dari barisan terakhir”. Bantulah pak Dengklek untuk mengetahui barisan ke-4 dengan menemukan suku ke-6 nya?

a. 4320
b. 4230
c. 2340
d. 5040
e. 1296

25

Salah satu perusahaan Dengklek Group, menjual sebuah produk baru berupa kedelai. Kedelai ini bukan sembarang kedelai, namun kedelai ini adalah jenis kedelai kesukaan bebek bebek pak Dengklek. Pada suatu saat pemanenan, pak Dengklek mengamati bahwa kedelai yang dipanen berbobot 100kg dengan kadar air sebesar 99%. Setelah itu, kedelai hasil panen tersebut mengalami penyusutan kadar air, menjadi 98%. Dalam hal ini, dapat dipastikan bobot dari kedelai-kedelai tersebut berkurang, berapakah perubahan bobot yang dialami kedelai-kedelai tersebut?
a. 50 kg
b. 1 kg
c. 2 kg
d. 25 kg
e. 49 kg

26

Pak Dengklek sedang melatih Beklek, bebek kesayangannya, untuk mengikuti lomba lari antar kandang bebek. Setiap harinya Beklek harus berlari berkeliling kolam dan Pak Dengklek mencatat waktu tempuh setiap putarannya. Dari data waktu yang dicatatnya, Pak Dengklek ingin mengetahui deretan putaran- putaran manakah Bekwat berada pada kondisi terbaiknya. Selama ini Beklek memiliki rata-rata p=14 per putaran. Setiap Beklek berlari dengan waktu q maka Pak Dengklek memberi nilai sebesar (p-q). Kondisi terbaik adalah ketika total nilai dalam deretan itu adalah sebesar-besarnya dan dengan panjang deretan putaran sependek-pendeknya. Misalnya suatu hari catatan waktunya adalah

   Putaran ke 1 2 3 4 5 6 7 8
   Waktu tempuh 13 13 13 18 12 13 13 17

Kondisi terbaiknya adalah mulai dari putaran ke 5 sampai dengan ke 7 dengan total 4 point. Untuk data catatan waktu berikut berapa total nilai pada putaran terbaiknya Beklek hari itu?

   Putaran ke 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
   Waktu tempuh  13 15 11 12 16 16 15 12 14 16 12 12 15 12 16 11 15 15

a. 3
b. 4
c. 5
d. 6
e. 7

 

27

Pak Dengklek baru membeli sejumlah serabi. Serabi hendak dihangatkan menggunakan alat penghangat serabi yang bisa diprogram. Mula-mula 5 serabi ditumpuk. Serabi-serabi kita sebut dari paling bawah ke atas a, b, c, d, e. Posisi serabi pada alat dinomori 1 sampai dengan 5, dari terbawah hingga teratas. Jika tombol angka k pada alat ditekan, 1 <= k <= 5, maka serabi pada posisi k hingga ke 5 akan bersama sama dibalik. Contohnya k=4, maka urutan serabi menjadi a, b, c, e, d. Jika berikutnya ditekan k = 2, maka urutan serabi menjadi a, d, e, c, b. Jika setelah itu berturut-turut ditekan tombol 1, 4, 3, 5, 2, 3, manakah urutan yang dihasilkan.
a. b, c ,d, a, e
b. a, b, c, d, e
c. b, e, a, d, c
d. e, d, c, b, a
e. a, e, b, d, c

28

Setelah baris-berbaris Pak Dengklek melanjutkan dengan permainan lain bersama ke 15 bebek-bebek kesayangannya. Bebek-bebek tetap dalam posisi berbaris namun dibebaskan memilih menghadap ke kiri atau ke kanan.

Satu langkah adalah: mulai dari sebelah kiri, satu demi satu, Pak Dengklek menyuruh setiap bebek berbalik arah, dan berhenti saat satu bebek berbalik dari kiri ke kanan, atau semuanya sudah menghadap ke kanan.

Langkah demi langkah dilakukan hingga berhenti (semua menghadap ke kanan).

Berikut ini arah hadap ke limabelas bebek ini dari terkiri ke terkanan.

Kiri, kanan, kanan, kanan, kiri, kiri, kanan, kiri, kiri, kanan, kanan, kiri, kanan, kiri, kanan.

Pertanyaan: Jika urutan langkah itu kita sebut yang pertama, kedua, ketiga, dst. Tepat setelah langkah ke 10 berapa banyak bebek yang pernah berubah arah?
Pilihan Jawaban:
a. antara 1 sampai dengan 3
b. antara 4 sampai dengan 6
c. antara 7 sampai dengan 9
d. antara 10 sampai dengan 12
e. antara 13 sampai dengan 15

29

Saatnya makan siang, para bebek akan diatur untuk duduk di ruang makan pada kursi-kursi yang kebetulan sudah dinomori dari 0, 1, 2, ... 14. Supaya ada variasi urutan duduk maka Pak Dengklek akan mendudukan para bebek menurut aturan sebagai berikut. Berdasarkan urutan awal dengan angka menyatakan tinggi badan: 44, 94, 83, 42, 38, 36, 20, 49, 33, 92, 34, 32, 13, 24, 53. Setiap bebek mulai dari yang pertama hingga terakhir harus berhitung sebagai berikut.

  • Jika berat badan X maka dapatkan Y = (X*11) mod 15.
  • Jika kursi nomor Y kosong, maka bebek dengan berat badan X menempati posisi Y.
  • Jika tidak, (sudah ada yang menempati), maka ulangi memeriksa kursi-kursi berikutnya (atau no Y+1, Y+2, ...) hingga ada yang kosong atau jika sampai nomor 14 terisi, ia melanjutkan memeriksa dari kursi nomor 0, nomor 1, dan seterusnya.

Bebek dengan berat badan 44, akan menempati kursi 4, karena 44*11 mod 15 = 4 (masih kosong).
Bebek dengan berat badan 94, akan menempati kursi 14, karena 94*11 mod 15 = 14 (masih kosong).
Bebek dengan berat badan 83, akan menempati kursi 13, karena 83*11 mod 15 = 13 (masih kosong).
Bebek dengan berat badan 42, akan menempati kursi 12, karena 42*11 mod 15 = 12 (masih kosong).
Bebek dengan berat badan 38, akan menempati kursi 0, karena 42*11 mod 15 = 13 (sudah terisi), no 14 juga sudah terisi, baru di 0 masih kosong. Dan seterusnya.
Pertanyaan: Bebek dengan berat badan berapakah yang menempati kursi no 9?
a. 33
b. 13
c. 83
d. 38
e. 53

Deskripsi untuk soal nomor 30 - 31

 
type
    arr= array of integer;
var
    slark : array [0 .. 10] of integer = (26, 12, 10, 17, 20, 14, 44, 35, 5, 24, 33);
    centaur : integer = 5;
function kwekkwok (slark: arr; left,right: integer): integer;
var
    i,j,tmp,pivot:integer;
begin
    i:= left; j:=right; pivot:=slark[(left+right) div 2];
    while (i <= j) do begin
        while (slark[i]<pivot) do
            i:=i+1;
        while (slark[j]>pivot) do
            j:=j-1;
        if (i<=j) then begin
            tmp:=slark[i];
            slark[i]:=slark[j];
            slark[j]:=tmp;
            i:=i+1;
            j:=j-1;
        end;
    end;
    if (slark[centaur]=pivot) then begin
        kwekkwok:=pivot;
    end else if ((left<j) and (centaur>=left) and (centaur<=j)) then begin
        kwekkwok:=kwekkwok(slark, left, j);
    end else if ((i<right) and (centaur>=i) and (centaur<=right)) then
        kwekkwok:=kwekkwok(slark, i, right);
end;

 

 

30

Berapa hasil yang dikembalikan jika dijalankan fungsi kwekkwok(slark, 0, 10)?
a. 5
b. 12
c. 17
d. 20
e. 44

31

Ada berapa kali pemanggilan fungsi kwekkwok pada soal nomor 31?
a. 4
b. 6
c. 8
d. 10
e. 11

Deskripsi untuk soal nomor 32 - 34

var
    arr : array [0..5] of integer = (8,1,6,3,4,15);
    i : integer;
    aduk : array [0..6] of integer;

procedure kalikali();
begin
    aduk[0] := 1;
    for i:=1 to 6 do
        aduk[i] := aduk[i-1] * arr[i-1];
end;

function hasil (kiri, kanan :integer): integer;
begin
    hasil := (aduk[kanan] div aduk[kiri-1]);
end;

begin
    kalikali();
    writeln(aduk[3]);
    writeln(hasil(2,3));
    writeln(hasil(4,6));
end.

 

32

Apakah keluaran baris writeln(aduk[3]); dari program di atas?
a. 3
b. 6
c. 48
d. 144
e. 180

33

Apakah keluaran baris writeln(hasil(2,3)); dari program di atas?
a. 3
b. 6
c. 48
d. 144
e. 180

34

Apakah keluaran baris writeln(hasil(4,6)); dari program di atas?
a. 3
b. 6
c. 48
d. 144
e. 180

Deskripsi untuk soal nomor 35 - 36

function asik(a,b,x : integer) : integer;
var i:integer;
begin
    for i:= 1 to x do
        a := a+b;
    asik := a;
end;
function seru(a,b,x : integer) : integer;
var i:integer;
begin
    for i:= 1 to x do
    begin
        a := a-b;
        break;
    end;
    seru := a;
end;
bebek(1));

 

35

Apakah hasil yang dikembalikan dari menjalankan fungsi asik (1, 9, 5)?
a. 46
b. 45
c. 37
d. 15
e. 142

36

Apa hasil yang dikembalikan dari menjalankan fungsi seru( asik( 15, 9, 2000 ) , 9, 2000 )?
a. 16006
b. 16015
c. 18037
d. 18000
e. 18006