Rulebook Uinic Programming Competition Deskripsi Lomba Uinic Programming Competition merupakan kompetisi yang diselenggarakan oleh Himpunan Mahasiswa Teknik Informatika UIN Sunan Kalijaga Yogyakarta untuk mengasah logika, dan menyelesaikan sebuah permasalahan yang ada serta merangsang para programmer tingkat SMA/SMK/MA sederajat dalam menjawab soal-soal Programming, adapun permasalahan yang dihadapi dalam bahasa C++ dan Java. Syarat dan Ketentuan 1. Peserta programming competition adalah satu tim yang terdiri dari maksimal 3 orang 2. Peserta merupakan siswa setingkat SMA sederajat 3. Setiap sekolah diperbolehkan mendaftarkan lebih dari satu tim. 4. Tidak diperkenankan ada peserta yang terdaftar dalam dua tim berbeda 5. Satu tim harus dari sekolah yang sama 6. Tim mengisi formulir online dilaman http://kompetisi.uinic.id/register/programming 7. Peserta harus melunasi biaya pendaftaran sebesar Rp 100.000 8. Ketentuan dan persyaratan yang belum tercantum akan ditambahkan dikemudian hari bbila diperlukan. Prosedur pendaftaran 1. Peserta mengisi formulir online dilaman http://kompetisi.uinic.id/register/programming 2. Pendaftaran paling lambat tanggal 30 April 2017 3. Pembayaran untuk pendaftaran online silahkan transfer ke nomor rek. BNI 0506706181 atau BRI 659501020423534 a.n Nafia Nisaul Hamidah 4. Peserta mengirim scan bukti pembayaran ke email
[email protected] dengan subject UPC_[Nama Tim]
5. Peserta yang telah melengkapi administrasi akan diberikan password untuk login ke system melalui alamat email yang digunakan saat pendaftaran
Jadwal dan Alur Kompetisi 1. Pada tanggal 14 Mei 2017 dilakukan babak penyisihan secara online pada jam 10.00-13.00 WIB 2. Pengumuman peserta yang masuk babak final pada 14 Mei 2017 3. Babak final akan dilaksanakan onsite pada acara puncak UINIC 1.0 pada tanggal 17 Mei 2017 di laboratorium Teknik Informatika UIN Sunan Kalijaga 4. Pengumuman dan pembagian penghargaan pemenang akan dilakukan pada tanggal 18 Mei 2017 Babak Penyisihan 1. Babak Penyisihan akan dilaksanakan secara online pada alamat web yang diumumkan kemudian. 2. Babak Penyisihan akan dilaksanakan selama 2.5 (dua setengah) jam dan terdiri dari 3 (tiga) sampai 5 (lima) soal pemrograman. 3. Tim dapat mengajukan klarifikasi soal melalui sistem grader pada 1 (satu) jam pertama kompetisi. 4. Dua puluh tim terbaik dengan nilai akhir di atas nol berhak mengikuti babak final (lihat bagian Sistem Penilaian). 5. Selama kompetisi berlangsung, setiap peserta dilarang untuk bekerja sama dalam bentuk apapun dengan peserta lain. 6. Peserta yang terindikasi melakukan pelanggaran atau kecurangan akan didiskualifikasi. Babak Final 1. Babak final dilaksanakan secara onsite di Laboratorium Teknik Informatika Sains dan Teknologi UIN Sunan Kalijaga 2. Setiap tim membawa laptop masing-masing tim 1 laptop untuk satu tim. 3. Babak final akan dilaksanakan selama 3 jam dan terdiri dari 10 (sepuluh) soal pemrograman.
4. Peserta dapat mengajukan klarifikasi soal melalui sistem grader pada 1.5 (satu setengah) jam pertama kompetisi. 5. Scoreboard akan dibekukan pada 1 (satu) jam terakhir kompetisi. 6. Selama kompetisi berlangsung, peserta dilarang: Berkomunikasi dengan peserta tim lain. Mengganggu peserta tim lain. Makan atau minum di dalam ruangan kompetisi. Mengganggu jalannya kompetisi dalam bentuk apa pun. Melakukan hal-hal yang berpotensi merusak perangkat komputer (membanting mouse, memukul keyboard keras-keras, dan lain lain). Menggunakan catatan dalam bentuk apa pun, media penyimpanan eksternal dalam bentuk apa pun (flash disk, dsb.), alat komunikasi dalam bentuk apa pun (ponsel, dsb.), dan/atau alat bantu hitung seperti sempoa dan kalkulator (dalam bentuk fisik). 7. Peserta yang terindikasi melakukan pelanggaran atau kecurangan akan diskualifikasi. Teknis Kompetisi Bahasa Pemrograman Bahasa pemrograman yang diperbolehkan dalam Programming Competition UINIC 1.0 adalah: C++, dengan ekstensi berkas .cpp. Soal Soal-soal yang diberikan merupakan soal-soal algoritmis. Setiap soal memiliki komponen – komponen berikut: 1. Kepala Soal; berisi judul soal, batas memori, dan batas waktu eksekusi program. 2. Deskripsi; berisi pengantar dari permasalahan dalam suatu soal. 3. Format Masukan; menyatakan spesifikasi masukan dari soal. 4. Format Keluaran; menyatakan spesifikasi keluaran dari soal. 5. Contoh Masukan dan Keluaran; berisi satu atau lebih contoh masukan dan keluaran yang bersesuaian. 6. Batasan; menyatakan batasan-batasan pada soal. Batasanbatasan khusus dari setiap subsoal akan dituliskan dalam komponen ini.
Sistem Penilaian 1. Setiap jawaban dikirimkan dalam bentuk berkas yang isinya merupakan kode yang ditulis menggunakan salah satu bahasa pemrograman yang diperbolehkan. 2. Berkas kode yang dikirim berukuran maksimal 100KB dan harus dapat dikompilasi dalam waktu maksimal 30 detik. 3. Program peserta menerima masukan dari standard input (keyboard) dan memberikan keluaran melalui standard output (layar). 4. Program peserta harus berhenti (terminate) dalam batas waktu tertentu dan tidak diperkenankan menggunakan memori lebih besar dari batasan yang telah ditentukan (batas waktu dan batas memori dicantumkan secara eksplisit pada setiap soal). 5. Masing-masing soal diberi bobot nilai 100 poin. 6. Setiap soal dibagi menjadi 3 (tiga) atau lebih subsoal yang masing-masing memiliki bobot tersendiri. Untuk mendapatkan nilai di suatu subsoal, program harus menghasilkan keluaran yang sesuai untuk setiap kasus uji pada subsoal tersebut. Banyaknya kasus uji pada setiap subsoal tidak dapat diketahui oleh publik, termasuk peserta. Total bobot dari seluruh subsoal akan berjumlah 100 poin. 7. Setiap program peserta akan mendapatkan satu dari putusan-putusan berikut. - “Accepted”, program menghasilkan jawaban yang benar untuk setiap kasus uji dan selesai dalam batas waktu dan memori yang diberikan. Peserta mendapat nilai 100 poin. - “Compile Error”, program tidak dapat dikompilasi di server. - “Wrong Answer”, program berjalan dan selesai dalam batasan waktu dan memori yang diberikan, namun menghasilkan jawaban yang salah. - “Time Limit Exceeded”, program berjalan namun tidak selesai dalam batasan waktu yang diberikan. - “Memory Limit Exceeded”, program menggunakan memori lebih dari batasan yang diberikan. - “Runtime Error”, program selesai namun mengembalikan non-zero return code. 8. Peserta akan langsung dapat melihat putusan-putusan beserta nilai yang diperoleh dari setiap program yang dikirim. Putusan-putusan yang dapat dilihat oleh peserta adalah
putusan-putusan terkait suatu subsoal, namun tidak detail hingga ke kasus uji. 9. Nilai dari suatu soal adalah nilai maksimum dari seluruh solusi yang dikumpulkan. 10. Nilai akhir dari seorang peserta adalah total nilai dari seluruh soal. 11. Peserta akan diurutkan berdasarkan nilai akhir, kemudian berdasarkan berdasarkan waktu pengumpulan jawaban terakhir yang paling awal yang mempengaruhi nilai akhir peserta. 12. Program peserta dilarang untuk: - mengakses jaringan; - forking; - membuka dan membuat file; - menyerang sistem keamanan server grader; - mengeksekusi program lain; - mengganti hak akses file; - membaca informasi file; - membuat system call. 13. Peserta yang melanggar larangan tersebut dengan sengaja akan didiskualifikasi. 14. Keputusan juri bersifat mutlak dan tidak dapat diganggu gugat. Timeline Keseluruhan Lomba
Penghargaan
Juara 1 : uang total + sertifikat + piala Juara 2 : uang total + sertifikat + piala Juara 3 : uang total + sertifikat + piala Seluruh peserta : sertifikat
Pembayaran Pembayaran untuk pendaftaran kelompok lomba dapat dilakukan ke No rek BRI : 659501020423534 atau No. rek BNI 0506706181 a.n Nafia Nisaul Hamidah Bukti pembayaran dilampirkan dan dikirim ke
[email protected] dengan subject UPC_[Nama Tim] Kontak Email :
[email protected] WhatsApp : Kitami (0856-4037-4471)