H1.jpg (1294 bytes)H2.jpg (7449 bytes) Logo_ani.gif (8982 bytes)
mainnav.gif (3793 bytes)S3.gif (747 bytes) S4.gif (801 bytes)

bannerAd.gif (3729 bytes)

 



Soal-soal lainnya: [Multipal [Bebek ] [Lacak ] [Paste ] [Labirin ]

Tebak-tebakan Kartu

MENEBAK KARTU

 

Badu dan Amat bermain suatu permainan kartu yang cukup mengasyikan. Badu memiliki N kartu (N bilangan kelipatan tiga, N=3K) masing-masing kartu bertuliskan angka 1 sampai dengan N. Setiap kartu ditulisi nomor yang sama pada kedua sisinya dan tidak ada dua kartu yang bernomor sama.

Peraturan permainannya adalah sebagai berikut.

·        Saat permainan dimulai kartu-kartu tersusun dalam tumpukan secara terurut (dari teratas: 1, 2, … N).

·        Mula-mula Amat memilih satu angka dari antara himpunan {1, 2, ../..., N} untuk ditebak oleh Badu.

·        Kemudian Badu meletakkan kartu-kartu dimeja di dalam K baris dan tiga kolom dimulai dari yang paling atas menempati baruis pertama dari kolom kiri ke arah kanan, kemudian baris kedua dari kiri ke kanan, dan seterusnya hingga kartu terakhir di baris terakhir pada posisi paling kanan.

·        Amat kemudian menyatakan kepada Badu nomor kolom dimana berada bilangan yang ia pilih.

·        Badu kemudian mengambil kartu dari kolom pertama dengan pengambilan dilakukan dari baris pertama, kedua, dan seterusnya, kemudian mengambil kartu-kartu kolom kedua dengan cara yang sama dan akhirnya kolom ketiga juga dengan cara yang sama.

·        Badu kemudian meletakkan kembali ke atas meja dengan urutan seperti sebelumnya tanpa pengocokan kartu.

·        Dengan urutan kartu yang baru Setiap kali Badu meletakkan seluruh kartu ke atas meja, Amat menyebutkan pada kolom keberapa yang berisikan bilangan yang ia pilih.

·        Demikian Badu meletakkan kartu ke atas meja dan Amat menyebutkan nomor kolom berturut-turut sampai Badu bisa menebak berapa angka yang diambil Amat atau D peletakkan telah dilakukan (D berapa kali maksimum Amat boleh menjawab).

 

Misalnya untuk N = 12 Amat memilih 11. Mula-mula kartu-kartu terurut sebagai 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 dan jika diletakkan akan tersusun sebagai berikut diikuti oleh susunan 3 peletakan berikutnya:


 

1

2

3

4

5

6

7

8

9

10

11

12

Jawab Amat: 2

 

 

1

4

7

10

2

5

8

11

3

6

9

12

Jawab Amat: 2

 

 

1

10

8

6

4

2

11

9

7

5

3

12

Jawab Amat: 1

 

 

1

6

11

5

10

4

9

3

8

2

7

12

Jawab Amat: 3

 


Untuk contoh di atas Badu sebenarnya dapat menjawab pada jawaban ketiga karena saat jawaban pertama maka kemungkinannya adalah: 2, 5, 8, dan 11, dan jawaban kedua kemungkinannya tingal 2 dan 11. Dan jawaban ketiga memastikan bahwa Amat mengambil bilangan 11. Namun secara umum dalam permainan ini berapa kali Amat menjawab dibatasi hingga D kali menjawab. Dengan demikian, sampai jawaban Amat ke D bisa terjadi dalam permainan ini masih terdapat sejumlah kemungkinan, barulah kemudian Badu terpaksa untuk menebak dari sekian kemungkinan tsb.

Tuliskan suatu program dengan nama KARTU.PAS yang dapat membantu Badu untuk mengetahui bilangan apa yang dipilih Amat berdasarkan setiap jawaban Amat tsb. Jika masih terdapat lebih dari satu kemungkinan maka program harus menyebutkan semua kemungkinan tersebut untuk dipilih Badu sebagai tebakan atas bilangan pilihan Amat yang terurut membesar.

 

Format Masukkan

 

Masukan dibaca dari file teks KARTU.IN dengan format sebagai berikut.

·        Baris pertam berisi integer N, 3 ≤ N ≤ 999, yang menyatakan jumlah kartu (N kelipatan 3 dari bilangan integer K).

·        Baris kedua berisi bilangan integer D, 1 ≤ D ≤ 10, yaitu jumlah berapa kali Amat menyebutkan nomor kolom ybs.

·        Dalam D baris selanjutnya berisikan angka-angka 1, 2, atau 3 yang menyatakan nomor kolom yang disebutkan Amat pada setiap peletakan.

 

Format Keluaran

 

Keluran dituliskan dalam file teks KARTU.OUT. Keluaran hanya berisikan satu baris. Jika terdapat lebih dari satu kemungkinan maka bilangan-bilangan tsb dituliskan membesar dan tetap dalam satu baris serta dipisahkan satu spasi.

 

Contoh

 


KARTU.IN

 

6

1

2

 

KARTU.OUT

 

2 5

 

KARTU.IN

 

12

2

3

1

 

KARTU.OUT

 

6

KARTU.IN

 

18

2

1

3

 

KARTU.OUT

 

7 16