Anda di halaman 1dari 9

Prosedur Kompetisi ITBPC Tingkat SMA

Contents
Pengantar................................................................................................................................................ 2
Soal ......................................................................................................................................................... 2
Soal yang diberikan.............................................................................................................................. 2
Data Input dan Output ......................................................................................................................... 2
Prosedur Kompetisi ................................................................................................................................. 3
Jadwal Kompetisi ................................................................................................................................. 3
Peralatan dan Lingkungan Kompetisi Final ........................................................................................... 3
Perbekalan saat Kompetisi Final .......................................................................................................... 4
Memulai Kompetisi.............................................................................................................................. 4
Klarifikasi ............................................................................................................................................. 5
Server Kompetisi ................................................................................................................................. 5
Antarmuka Pengumpulan Solusi .......................................................................................................... 5
Bantuan ............................................................................................................................................... 6
Akhir Kompetisi ................................................................................................................................... 6
Penilaian ................................................................................................................................................. 6
Test Run .............................................................................................................................................. 7
Test case ............................................................................................................................................. 7
Skor ..................................................................................................................................................... 8
Feedback detail saat pengumpulan...................................................................................................... 8
Kecurangan ......................................................................................................................................... 8
Kode Etik ................................................................................................................................................. 8

ITBPC 2010 competition rules Page 1


Pengantar

Aturan kompetisi ini mencakup Prosedur Kompetisi dan Prosedur Penilaian.

Soal

Semua permasalahan yang disediakan di ITBPC didesain agar algoritmis. Pada beberapa soal, efisiensi
memainkan peran yang cukup penting. Apabila efisiensi diperlukan, test case akan didesain agar mampu
membedakan solusi ke beberapa level efisiensi. Test case terkecil akan didesain sehingga solusi masuk
akal yang benar apapun dapat menyelesaikan test case ini dalam batasan soal. Sehingga mencoba suatu
permasalahan akan cukup bermanfaat meskipun kontestan tidak mengerti bagaimana cara
menyelesaikan test case besar dalam batasan soal.

Soal yang diberikan

Soal yang akan diberikan adalah soal Batch dimana solusi adalah sebuah source file sebuah program
computer yang membaca data dari standard input (stdin) dan menulis jawaban dari permasalahan ke
standard output (stdout).

Source program yang diberikan oleh kontestan harus terdiri dari satu source file. Tiap soal akan berisi :

1. persoalan yang harus di pecahkan,


2. format input dan output,
3. batasan input (bila dapat diaplikasikan),
4. resource yang membatasi untuk komputasi (contoh : waktu CPU, batasan memori),
5. elemen kriteria penilaian (contoh : “40% test case resmi akan memiliki N maksimal 100),
6. batasan lain terhadap program.

Data Input dan Output

Pada seluruh persoalan, data input dan output akan terdiri dari satu atau lebih baris masing-masing
diakhiri sebuah karakter end-of-line termasuk baris terakhir. Karakter end-of-line di Linux
direpresentasikan sebagai sebuah karakter ‘\n’ (kode ASCII 10). Setiap baris mengandung satu atau lebih
elemen yang dipisahkan oleh spasi. Tiap elemen adalah sebuah string yang bisa ditulis dan hanya terdiri
dari karakter yang dapat direpresentasikan dengan kode ASCII 33 hingga 126 (termasuk 33 dan 126).

ITBPC 2010 competition rules Page 2


Tiap elemen bisa merepresentasikan bilangan atau string; arti tiap elemen akan didefinisikan di deskripsi
soal.

Format dan batasan input dan output akan dispesifikasikan di deskripsi soal. Data output harus secara
ketat menyesuaikan instruksi soal. Jumlah dan tipe spasi yang digunakan untuk memisahkan elemen
pada output tidak akan menjadi masalah pada kebanyakan kasus. Namun, anda sangat
direkomendasikan untuk mengikuti spesifikasi output se tepat mungkin.

Prosedur Kompetisi

Jadwal Kompetisi

Akan ada dua hari kompetisi yang merupakan dua bagian dari lomba, yaitu Penyisihan dan Final.
Penyisihan akan berlangsung secara online sedangkan Final akan berlangsung di Institut Teknologi
Bandung. Jadwal resmi akan dipublikasikan di website resmi ITBPC. Akan ada satu jam Kompetisi Latihan
sehari sebelum Final. Tujuan dari Latihan ini adalah untuk membuat para peserta familiar dengan
lingkungan dan prosedur yang ada.

Peralatan dan Lingkungan Kompetisi Final

Semua komputer yang akan digunakan untuk kompetisi akan di boot ke Linux. Microsoft Windows akan
tidak dapat diakses oleh peserta pada saat kompetisi. Paket berikut akan terinstall pada masing-masing
komputer.

1. Linux Fedora Core


2. web browser : Firefox,
3. editors : gedit,
4. compilers : gcc >= 4.1, g++ >= 4.1, Free Pascal >= 2.04,
5. debugger : gdb,
6. Dokumentasi STL

Spesifikasi grading server :

1. CPU Intel® Xeon® Processor E5405


2. RAM 4GB
3. Linux Ubuntu 9.10
4. GCC 4.4.1
5. FPC 2.2.4

ITBPC 2010 competition rules Page 3


Perbekalan saat Kompetisi Final

Akan disediakan kertas kosong dan alat tulis pada ruang kompetisi. Pada hari kompetisi final, kontestan
tidak boleh membawa apapun ke ruang kompetisi selain :

1. pakaian,
2. perhiasan yang masuk akal,
3. alat tulis,
4. obat-obatan pribadi,
5. jam tangan sederhana

Usaha apapun untuk membawa masuk barang lain akan dianggap kecurangan. Alat-alat berikut sangat
dilarang untuk dibawa ke ruang kompetisi :

1. perlengkapan komputasi apapun (contoh : kalkulator, organizer, PDA, komputer),


2. buku atau catatan apapun,
3. media penyimpanan apapun (contoh : flashdisk, CD-ROM, portable hardisk),
4. alat komunikasi apapun (contoh : handphone, radio).

Semua alat elektronik dan material yang diberikan oleh panitia ITBPC boleh digunakan saat kompetisi
Final.

Memulai Kompetisi

Saat hari - hari Penyisihan, peserta dapat mengakses soal dan melakukan submission ke alamat server
kompetisi yang akan dimumumkan lewat situs resmi ITBPC. Segala aktivitas kompetisi peserta akan
difasilitasi di dalam server kompetisi tersebut.

Saat hari Final, kontestan akan dipandu panitia ruangan perlombaan (akan diberitahukan saat hari
perlombaan). Semua kontestan wajib mengenakan ID pengenal mereka. Tiap kontestan akan ditetapkan
pada satu komputer; informasi mengenai hal ini akan diberikan sebelum kompetisi Final. Tiap kontestan
harus sudah duduk di depan komputer masing-masing paling lambat 5 menit sebelum kompetisi Final
dimulai. Kontestan akan dicek sebelumnya apakah ia hanya membawa barang yang diperbolehkan.
Kontestan harus mencari komputer tempat ia ditetapkan, duduk, dan menunggu tanpa memegang
apapun dari :

1. komputer,
2. keyboard,
3. mouse,
4. material kompetisi lain termasuk soal.

ITBPC 2010 competition rules Page 4


Klarifikasi

Pada dua jam pertama kompetisi, kontestan boleh memberikan pertanyaan lewat web browser ke
Server Kompetisi mengenai ambiguitas dan klarifikasi soal. Pertanyaan yang ditulis harus dalam Bahasa
Indonesia yang baik dan benar. Semua pertanyaan nantinya akan direspon oleh panitia. Karena mungkin
akan membutuhkan waktu untuk menjawab pertanyaan, kontestan diharapkan melanjutkan pengerjaan
soal sambil menunggu jawaban dari panitia. Kontestan harus merangkai pertanyaannya sehingga hanya
perlu dijawab dengan Ya / Tidak. Jawaban yang mungkin diterima peserta adalah :

1. “ya”,
2. “tidak”,
3. “baca soal lebih teliti” – bila soal sebenarnya sudah cukup mendeskripsikan jawaban dari
pertanyaan kontestan,
4. “pertanyaan tidak valid” – bila pertanyaan tidak bisa dijawab dengan ya / tidak,
5. “no comment” – bila pertanyaan menyangkut informasi yang tidak bisa diberikan oleh panitia,

Server Kompetisi

Kompetisi pemrograman ITBPC diadakan di Laboratorium Teknik Informatika Institut Teknologi Bandung
dimana tiap kontestan menempati komputernya untuk mengerjakan soal dan mencoba solusi mereka.
Penilaian dan evaluasi dilakukan di Server Kompetisi, yang memiliki lingkungan eksekusi yang mirip
dengan milik kontestan.

Tiap kontestan hanya menempati komputer yang hanya bisa diakses Linux. Beberapa software untuk
melakukan pengembangan akan sudah terinstall di dalamnya. Software ini nantinya akan digunakan
untuk membuat solusi dari soal yang disediakan. Tidak ada batasan berapa kali sebuah program diubah,
dikompilasi, atau dijalankan di komputer peserta.

Tiap komputer peserta akan memiliki akses ke Server Kompetisi, ke alamat yang menyediakan
dokumentasi, ke dokumen soal, dan ke tempat pengumpulan solusi.

Tiap komputer peserta tidak akan bisa digunakan untuk mengakses satu sama lain maupun mengakses
internet. Segala usaha untuk mengakses komputer lain dianggap kecurangan.

Antarmuka Pengumpulan Solusi

Kontestan dapat mengumpulkan solusinya ke Server Kompetisi melalui web browser.

Saat mengumpulkan solusinya, peserta harus memilih soal yang bersangkutan dengan solusinya. Solusi
boleh dikumpulkan kapan saja selama kompetisi berlangsung. Bila seorang kontestan mengumpulkan

ITBPC 2010 competition rules Page 5


lebih dari satu solusi untuk satu persoalan, solusi terakhir yang ia kumpulkan untuk soal tersebut adalah
solusi yang akan digunakan terakhir untuk penilaian.

Untuk semua soal, fasilitas pengumpulan akan menerima kode yang ditulis dalam bahasa C, C++ atau
Pascal, memastikan kode dapat dikompilasi dan mematuhi batasan ukuran file dan waktu kompilasi.
Fasilitas pengumpulan ini juga akan menjalankan program hasil kompilasi terhadap test case contoh
yang diberikan di soal, dengan memperhitungkan batasan resource, dan memberikan hasilnya ke
kontestan.

Setiap kode program yang dikumpulkan harus berukuran dibawah 100KB dan harus bisa dikompilasi
oleh fasilitas pengumpulan dibawah 30 detik. Program yang dikumpulkan yang tidak mematuhi aturan
ini akan langsung ditolak oleh sistem pengumpulan dan akan memberikan info ke kontestan. Kontestan
hanya boleh mengumpulkan solusinya sebanyak 20 kali tiap soal. Sebuah pengumpulan solusi dianggap
sukses dan diterima untuk dinilai apabila solusi tersebut lolos kompilasi. Perhatikan bahwa solusi yang
dikumpulkan akan diterima walaupun tidak berhasil menyelesaikan test case contoh.

Bantuan

Kontestan boleh meminta bantuan panitia kapanpun. Panitia tidak akan menjawab pertanyaan apapun
yang berhubungan dengan soal, tetapi akan mengantarkan kontestan ke toilet dan snack, dan
membantu kontestan apabila kontestan membutuhkan bantuan untuk memperbaiki komputer atau
jaringan. Satu-satunya cara yang diperbolehkan agar kontestan bisa mengakses jaringan adalah dengan
menggunakan web browser dan hanya untuk mengakses Server Kompetisi; bahkan menjalankan ‘ping’
pun tidak diperbolehkan. Kontestan tidak boleh mencoba “membenarkan” atau bahkan “mengecek”
komputer atau jaringan sendiri; mereka harus minta bantuan dari panitia.

Akhir Kompetisi

Saat hari Final, 3 peringatan akan diberikan yaitu 15 menit, 5 menit dan 1 menit sebelum kompetisi
berakhir. Tiap peringatan akan diberikan oleh panitia secara lisan. Akhir dari kompetisi juga akan
diberitahukan secara lisan. Saat pengumuman akhir kompetisi, peserta harus berhenti mengerjakan soal
dan menunggu di kursinya untuk kemudian dipanggil untuk meninggalkan ruangan kompetisi dan
menuju ruangan yang akan ditunjukkan oleh panitia. Saat meninggalkan ruangan, peserta harus
mengambil barang yang ia titipkan dan perbekalan yang ia bawa.

Penilaian

ITBPC 2010 competition rules Page 6


Untuk tiap soal, source file akan dikompilasi menggunakan Linux, dengan memperhitungkan ukuran file
dan batasan waktu kompilasi. Perintah berikut akan digunakan untuk melakukan kompilasi solusi dari
suatu soal (anggap nama soal adalah abc) :

1. untuk C :
gcc –o abc abc.c –std=c99 –O2 –DCONTEST –s –static -lm
2. untuk C++ :
g++ -o abc abc.cpp -O2 -DCONTEST -s -static
3. untuk Pascal :
fpc -O1 -XS -dCONTEST abc.pas

Test Run

Bila solusi yang dikirimkan lolos kompilasi, sistem penilaian akan mengeksekusi program hasil kompilasi
dalam Linux, dengan memperhitungkan batasan runtime dan memori menggunakan beberapa input.

Sebuah test run adalah sebuah test yang dilakukan terhadap solusi untuk sebuah input. Untuk tiap test
run, batasan resource akan diperhitungkan. Bila sebuah program melebihi batasan resource apapun,
program akan dihentikan dan sebuah test run akan dianggap salah dengan tidak memperhitungkan
output apapun yang akan dikeluarkan program itu nantinya.

Bila program berhasil mengeluarkan output dengan mematuhi batasan resource yang ditentukan,
output dari program itu akan diperiksa kebenarannya. Skor akan diberikan bergantung pada output yang
diberikan. Tiap test run boleh memiliki maksimal skor yang berbeda-beda.

Apabila sebuah test run gagal menghasilkan output karena melanggar batasan resource atau karena
menghasilkan output yang salah, maka test run itu akan diberi nilai nol.

Untuk beberapa soal, nilai parsial mungkin bisa didapatkan pada sebuah test run. Bila hal ini
dimungkinkan, hal ini akan dituliskan secara eksplisit di soal.

Pada akhir program, program harus secara eksplist menghentikan kinerjanya dengan mengeluarkan exit
code 0. Exit code lain akan dianggap sebagai sebuah kesalahan dan test run tersebut akan mendapat
nilai 0.

Test case

Sebuah test case adalah satu buah test run. Skor untuk sebuah test case di definisikan sebagai nilai dari
test run.

Pada tiap soal, akan terdapat paling sedikit satu test case “mudah”, dengan kebutuhan yang akan ditulis
pada soal.

ITBPC 2010 competition rules Page 7


Skor

Skor final dari sebuah soal adalah total skor yang didapatkan dengan menjumlahkan semua skor untuk
tiap test case untuk soal tersebut. Hanya solusi yang dikirim dan diterima oleh sistem penilai yang akan
diberi skor.

Feedback detail saat pengumpulan

Untuk tiap soal dan solusi yang terkait yang dikirimkan, solusi ini akan dicobakan menggunakan test case
contoh yang ada di deskripsi soal. Saat Server Kompetisi selesai melakukan penilaian terhadap solusi
yang dikirimkan peserta terhadap test case contoh, Server Kompetisi akan memberikan feedback
mengenai solusi tersebut. Feedback itu akan memberikan skor dari solusi kontestan terhadap test case
contoh dan akan mengeluarkan satu pesan dari beberapa pesan yang mungkin :

1. Program berhasil di eksekusi dalam batasan dan mengeluarkan output yang benar.
2. Program berhasil di eksekusi dalam batasan tetapi mengeluarkan output yang salah.
3. Program gagal di eksekusi karena melanggar suatu batasan tertentu.
4. Program tidak lolos kompilasi.

Tidak akan ada informasi mengenai letak kesalahan kontestan. Tidak ada informasi mengenai test case
yang digunakan dan output apa yang dikeluarkan oleh solusi kontestan.

Kecurangan

Program yang dikumpulkan tidak boleh melakukan :

1. mengakses jaringan,
2. fork,
3. membuka dan membuat file,
4. menyerang sistem keamanan server penilai,
5. mengeksekusi program lain,
6. mengganti izin file sistem,
7. membaca informasi file sistem,
8. membuat system call yang tidak berhubungan dengan solusi soal.

Semua aksi diatas dianggap kecurangan dan pelakunya akan langsung didiskualifikasi.

Kode Etik

ITBPC 2010 competition rules Page 8


Tiap kontestan yang

1. mengganggu aktifitas kontestan lain,


2. merusak fasilitas kompetisi maupun penilaian,
3. mengakses jaringan maupun komputer lain selain miliknya selama kompetisi Final menggunakan
cara apapun selain menggunakan web browser sesuai perintah,
4. menghancurkan sekuritas komputer manapun,
5. mengganggu jalannya kompetisi dengan cara apapun,
6. berkomunikasi dengan siapapun selain dengan panitia selama kompetisi Final,
7. atau berusaha untuk melakukan apapun yang dituliskan diatas

akan dianggap melakukan kecurangan dan akan didiskualifikasi.

Kecurangan akan sangat serius ditindak dan peraturan akan ditegakkan. Tiap kontestan yang melakukan
kecurangan dalam bentuk apapun akan langsung didiskualifikasi.

ITBPC 2010 competition rules Page 9