Penting! Pengumpulan jawaban dapat dilakukan dengan : 1. Dikirim melalui e-mail ke
[email protected] dan
[email protected] 2
Diantar / dikirim lewat pos dalam bentuk diskette ke : Panitia Lomba IBII CC 2005 IBII Jl. Yos Sudarso Kav. 87 Sunter, Jakarta 14350
3. Harap diperhatikan metode penulisan pada soal
Informasi Umum Pada jawaban Anda tidak perlu gunakan instruksi pengaturan layar seperti gotoxy karena jawaban Anda akan diuji dengan cara redirection, yaitu menggunakan data dari file dan hasilnya disimpan di-file. Misalkan soalnya seperti demikian: Tulis program untuk menampilkan deret bilangan genap.
Masukan Pada baris pertama terdapat sebuah bilangan k yang menyatakan jumlah kasus (kelompok data) yang akan diproses. Selanjutnya terdapat k baris data yang masing-masing terdiri dari dua bilangan bulat positif.
Keluaran Terhadap data setiap kasus tampilkan bilangan-bilangan genap, termasuk kedua bilangan batas.
Contoh Masukan : 2 1 10 15 17 Keluaran Untuk Contoh Masukan : 2 4 6 8 10 16 Misalkan program Anda bernama soal1.c dengan isi seperti demikian: # include <stdio.h> void main() { int kasus, ctr, bil1, bil2, x; scanf(“%d”, &kasus); for (ctr = 1; ctr <= kasus; ctr++) { scanf(“%d %d”, &bil1, &bil2); for (x = bil1; x <= bil2; x++) if (x % 2 == 0) printf(“%d “, x); printf(“\n”); } }
Juri menyiapkan data test misalnya bernama soal1.dat dengan isi: 4 100 110 100 109 101 110 101 109 Juri juga menyiapkan jawaban misalnya bernama soal1.jwb dengan isi: 100 102 104 106 108 110 100 102 104 106 108 102 104 106 108 110 102 104 106 108 Program Anda soal1.c akan di-compile menjadi soal1.exe. Lalu di-run dengan instruksi: c:>soal1 < soal1.dat > soal1.out File soal1.out adalah hasil run dari program Anda. Kemudian juri akan membandingkan isi soal1.out dengan soal1.jwb
Soal A : Segitiga Angka Tulis program untuk menampilkan segitiga sama kaki yang dibentuk dari angka-angka. MASUKAN Pada baris pertama terdapat sebuah bilangan n (n > 0) yang menyatakan banyaknya data yang akan diproses. Selanjutnya terdapat n baris yang masing-masing terdiri dari sebuah bilangan b (1 <= b <= 200). KELUARAN Untuk setiap bilangan b tampilkan sebuah segitiga sama kaki. Segitiga ini terdiri dari b baris. Pada baris ke-i (1 <= i <= b) angka paling kiri adalah digit satuan dari bilangan i. Angka ini menaik (ascend) hingga posisi tengah lalu menurun sampai bernilai i. Lihat contoh. Pisahkan segitiga yang satu dengan yang lain dengan satu baris kosong. CONTOH MASUKAN : 2 5 12 KELUARAN UNTUK CONTOH MASUKAN : 1 232 34543 4567654 567898765 1 232 34543 4567654 567898765 67890109876 7890123210987 890123454321098 90123456765432109 0123456789876543210 123456789010987654321 23456789012321098765432
Soal B : Mana Spasinya Suatu dokumen dikonversi ke teks editor lain. Akibatnya semua spasi yang berada di sebelah kanan item pada tabel menjadi hilang. Anda diminta untuk menata kembali hasil konversi tersebut dengan menambahkan spasi yang hilang. MASUKAN Bilangan pada baris pertama menyatakan jumlah kasus yang harus diproses. Setiap kasus diawali sebuah bilangan yang menyatakan jumlah baris tabel (tidak lebih dari 100), diikuti baris-baris tabel. KELUARAN Tampilkan tabel dalam keadaan utuh. Berikan satu baris kosong untuk memisahkan keluaran antar kasus. CONTOH MASUKAN : 1 11 +---+-------------------------+------+-----+ |No|Nama|Skor|Rank| +---+-------------------------+------+-----+ |1|Abdullah Panji|193|3| +---+-------------------------+------+-----+ |2|Budi Santoso Jaya|235|1| +---+-------------------------+------+-----+ |3|Chen Kwan Long|210|2| +---+-------------------------+------+-----+ |4|I Made Sugriwa|184|4| +---+-------------------------+------+-----+ KELUARAN UNTUK CONTOH MASUKAN : +---+-------------------------+------+-----+ |No |Nama |Skor |Rank | +---+-------------------------+------+-----+ |1 |Abdullah Panji |193 |3 | +---+-------------------------+------+-----+ |2 |Budi Santoso Jaya |235 |1 | +---+-------------------------+------+-----+ |3 |Chen Kwan Long |210 |2 | +---+-------------------------+------+-----+ |4 |I Made Sugriwa |184 |4 | +---+-------------------------+------+-----+
Soal C : Sorting Biner Bits (binary digits) adalah bilangan basis dua. Tulis program untuk mengurutkan sejumlah bilangan berbasis dua. Semua bilangan pada soal ini berupa bilangan basis dua. MASUKAN Bilangan pada baris pertama menyatakan jumlah kasus yang perlu diolah. Setiap kasus diawali sebuah bilangan N (1 <= N <= 1100100) yang menyatakan jumlah data yang akan diproses. N baris berikutnya adalah bilangan yang dimaksud. Setiap bilangan bernilai tidak lebih dari 111111111111111111111111111111. KELUARAN Tampilkan hasil sorting secara ascending. Pisahkan jawaban dua kasus berurutan dengan satu baris kosong. CONTOH MASUKAN : 10 100 1000 1010 11 1101 11 111 11 1 KELUARAN UNTUK CONTOH MASUKAN : 11 1000 1010 1101 1 11 111 Keterangan Contoh masukan : 10
Bernilai desimal 2, artinya terdapat 2 kasus untuk diproses
100
Bernilai desimal 4, artinya pada kasus pertama terdapat 4 biner untuk diproses
1000 1010 11 1101
Ini adalah keempat biner kasus pertama untuk diurutkan
11
Bernilai desimal 3, artinya pada kasus kedua terdapat 3 biner untuk diproses
111 11 1
Ini adalah ketiga biner kasus kedua untuk diurutkan
Jawaban yang dikumpul adalah file .pas, .c atau .cpp