Anda di halaman 1dari 7

SOAL SELKSI KOMPAS

Sumber: Hackerank

Soal 1:

Pak Abdi adalah seorang pemilik ladang luas dengan 4 anak. Saat ini Pak Johan
ingin membagi lahannya dengan keempat anaknya, yaitu Johan, Budi, Didi, dan
Tono. Untuk mempermudah pembagian, Pak Abdi akan membagi tanahnya menjadi
4 bagian dengan menaruh sebuah pasak di suatu tempat di ladangnya. Tiap anak
akan mendapatkan salah satu kuadran dari ladang:

• Johan akan mendapatkan kuadran Barat Laut


• Budi akan mendapatkan kuadran Timur Laut
• Didi akan mendapatkan kuadran Barat Daya
• Tono akan mendapatkan kuadran Tenggara

Setelah puas dengan metode ini, Pak Abdi teringat bahwa ia memiliki aset di
beberapa petak ladang. Ia ingin mengetahui ke tangan siapakah aset ini akan
berada. Untuk itu, ia meminta anda untuk membuatkan program untuk mengetahui
hal tersebut.

Input Format

Input memiliki beberapa test case. Untuk setiap test case akan dimulai dengan
sebuah angka N, yaitu jumlah petak aset yang ingin diketahui oleh Pak Abdi. Pada
baris berikutnya akan diberikan angka X dan Y, yaitu koordinat (x,y) petak dimana
Pak Abdi akan menaruh pasak. Untuk N baris berikutnya akan diberikan 2 angka A
dan B, yaitu koordinat (x,y) petak aset yang ingin diketahui oleh Pak Abdi. Input akan
berakhir ketika N adalah 0. Untuk koordinat sumbu X, yaitu sumbu horizontal, -
1000000 adalah ujung paling kiri, sementara 1000000 adalah ujung paling kanan.
Untuk koordinat sumbu Y, yaitu sumbu vertikal, -1000000 adalah ujung paling
bawah, sementara 1000000 adalah ujung paling atas.

Constraints

0 <= N <= 100

-1.000.000 <= X,Y <= 1.000.000

-1.000.000 <= A,B <= 1.000.000

Output Format

Untuk tiap input koordinat petak aset, cetak nama pemilik aset pada layar ( Johan /
Budi / Didi / Tono ). Jika koordinat petak aset yang diberikan berada pada
perbatasan, cetak Perbatasan di layar.
Sample Input 0

5
55
10 10
00
38
83
52
4
-99999 999
-1000 -1000
748 8292
-2123 0
1872 123
0

Sample Output 0

Budi
Didi
Johan
Tono
Perbatasan
Tono
Budi
Tono
Tono

Soal 2:

Pak Abdi adalah seorang guru di sekolah SD Jaya dengan 4 murid, yaitu Johan,
Budi, Didi, dan Tono. Saat ini kelas Pak Abdi mendapatkan tugas untuk
mengurutkan angka pada kartu yang diberikan Pak Abdi. Keempat murid Pak Abdi
sudah menyelesaikannya dan saat ini tinggal menunggu Pak Abdi untuk memeriksa
jawabannya. Namun, sayangnya Pak Abdi terpeleset sambil membawa tumpukan
kartu yang merupakan kunci jawaban tugas tersebut (tidak ada yang tahu mengapa
kunci jawaban juga berupa kartu, tapi terserah Pak Abdi.). Akibatnya, tumpukan
jawaban tersebut tercecer dan urutannya teracak. Pak Abdi kemudian meminta anda
untuk mengurutkan kembali jawabannya dan memberitahukan pada Pak Abdi siapa
yang mendapatkan jawaban benar terbanyak dari keempat muridnya.

Input Format

Tiap input akan dimulai dengan sebuah angka N, yaitu jumlah kartu pada tugas yang
diberikan oleh Pak Abdi. Pada baris berikutnya akan diberikan angka d[i] sebanyak
N angka, yaitu angka pada kartu milik Pak Abdi. Untuk 4 baris berikutnya, pada
masing – masing baris akan diberikan angka a[i] sebanyak N angka per baris, yaitu
hasil pengurutan milik masing – masing murid (baris 1 milik Budi, baris 2 milik Didi,
baris 3 milik Johan, baris 4 milik Tono). Angka pada kartu dipastikan tidak ada yang
berulang, dan tidak akan ada angka yang berbeda antara urutan Pak Abdi dengan
murid – muridnya.
Constraints

5 <= N <= 1000

-1.000.000 <= d[i] <= 1.000.000

-1.000.000 <= a[i] <= 1.000.000

Output Format

Untuk tiap input, cetak nama murid dengan urutan yang memiliki kesalahan paling
sedikit pada layar ( Budi / Didi / Johan / Tono ). Jika ada 2 murid atau lebih dengan
jumlah kesalahan paling sedikit yang sama, cetak nama dengan urutan leksikografis
terkecil.

Sample Input 0

10
9 8 6 3 10 4 2 5 7 1
1 2 4 3 6 5 7 8 9 10
2 3 4 1 5 7 6 8 9 10
1 2 3 10 9 8 6 5 4 7
3 1 2 4 5 6 7 8 9 10

Sample Output 0

Tono

Sample Input 1

5
23 54 12 14 90
12 14 23 54 90
12 23 14 90 54
54 90 23 12 14
12 14 23 54 90

Sample Output 1

Budi
Soal 3:

Pak Abdi adalah salah satu programmer yang bekerja di bidang keamanan negara
X, dan anda saat ini berada di tim Pak Abdi. Saat ini tim anda mendapatkan tugas
untuk membuat sistem rudal dengan ketentuan sebagai berikut:

- Negara X memiliki N buah rudal, masing – masing dengan jarak tempuh maksimal d[i].
- Negara membutuhkan sistem rudal untuk menghancurkan K target yang berjarak e[i] dari tempat
peluncuran rudal.
- Tiap rudal hanya bisa digunakan sebanyak satu kali.

Saat ini anggota lain dari tim Pak Abdi sedang sibuk mengerjakan proyek lain. Maka
dari itu, Pak Abdi mengandalkan anda untuk melakukan tugas ini.

Input Format

Tiap input akan dimulai dengan 2 angka yaitu N dan K. Pada baris berikutnya akan
diberikan angka d sebanyak N angka, yaitu jarak maksimal dari masing – masing
rudal. Pada baris berikutnya akan diberikan angka e sebanyak K angka, yaitu jarak
dari masing – masing target.

Constraints

1 <= N,K <= 1000

1 <= d[i] <= 1000

1 <= e[i] <= 1000

Output Format

Outputkan Ya pada layar jika sistem rudal mampu menghancurkan seluruh target,
atau outputkan Tidak jika sistem rudal tidak mampu menghancurkan seluruh target.

Sample Input 0

56
6 8 12 24 3
123456

Sample Output 0

Tidak

Sample Input 1

33
246
135
Sample Output 1

Ya

Soal 4:

Soal berikut ini adalah sebuah soal klasik di dunia programming, yaitu N-Queen
Problem. Diberikan sebuah bilangan N, hitung berapa banyak konfigurasi
penempatan N bidak ratu catur pada papan catur berukuran N kali N sehingga tidak
ada satupun ratu yang berada pada kolom, baris, atau diagonal yang sama.

Input Format

Tiap baris pada input akan mengandung sebuah integer N. Input akan berakhir
ketika nilai N = 0 (untuk N=0 tidak perlu diproses ke dalam persoalan).

Constraints

0 <= N <= 9

Output Format

Untuk tiap baris angka, keluarkan jumlah konfigurasi yang memungkinkan untuk
menempatkan N bidak ratu pada papan catur ukuran N * N.

Sample Input 0

3
0

Sample Output 0

Sample Input 1

1
2
0

Sample Output 1

1
0
Soal 5:

Pak Abdi adalah seorang ayah dengan 4 anak, yaitu Johan, Budi, Didi, dan Tono.
Salah satu permainan favorit Pak Abdi dengan anak – anaknya adalah pencarian
harta karun di lahan miliknya. Cara bermainnya adalah sebagai berikut:

- Pertama, keempat anak Pak Abdi akan memilih satu petak sebagai tempat mulai mencari harta di
lahan.
- Kemudian, Pak Abdi akan memilih satu petak di lahan untuk menyembunyikan harta.
- Yang pertama kali menemukan harta tersebut adalah pemenangnya.

Saat ini, anak – anak Pak Abdi sudah sangat pintar, sehingga mereka bisa
memperkirakan lokasi harta yang disembunyikan, dan selalu mengambil jarak
terdekat untuk bisa ke harta tersebut. Pak Abdi ingin sekali mensimulasikan
permainan ini ke dalam sebuah program, sehingga Pak Abdi bisa mengetahui siapa
pemenang dalam sebuah permainan. Sebagai teman baik Pak Abdi, anda diminta
tolong untuk membuat program untuk melakukan tugas ini.

Input Format

Input dimulai dengan 2 bilangan yaitu X dan Y, yaitu panjang (jumlah kolom) dan
lebar (jumlah baris) dari lahan Pak Abdi. X baris berikutnya akan mengandung
masing – masing Y karakter yang merupakan gambar peta ladang Pak Abdi.

Lambang . melambangkan petak kosong Lambang # melambangkan tembok


penghalang yang tidak bisa dilewati anak – anak Pak Abdi Lambang J,B,D,T
melambangkan lokasi awal masing – masing anak Pak Abdi, sesuai dengan
inisialnya. Dipastikan bahwa di tiap input ada salah satu anak yang berhasil
mendapatkan harta. Lambang + melambangkan petak berisi harta.

Constraints

5 <= X,Y <= 10

Output Format

Outputkan nama anak Pak Abdi yang berhasil memenangkan permainan tersebut.
Jika ada 2 atau lebih anak yang berhasil memenangkan permainan, pilih nama anak
dengan urutan leksikografis terkecil.

Sample Input 0

55
#####
..J..
.TBD.
.....
+....
Sample Output 0

Tono

Anda mungkin juga menyukai