“Battle Live”: ICPC Final di Porto

Hari ini Pusingan akhir pertandingan pengaturcaraan antarabangsa ICPC 2019 akan diadakan di bandar Porto, Portugis, dan wakil Universiti ITMO dan pasukan lain dari universiti di Rusia, China, India, Amerika Syarikat dan negara lain akan mengambil bahagian di dalamnya. Mari beritahu anda dengan lebih terperinci.

“Battle Live”: ICPC Final di Porto
icpcnews /Flickr/ CC BY / Foto dari perlawanan akhir ICPC-2016 di Phuket

Apa itu ICPC

ICPC merupakan pertandingan pengaturcaraan antarabangsa dalam kalangan pelajar. Mereka telah diadakan selama lebih 40 tahun - final pertama berlalu kembali pada tahun 1977. Pemilihan dijalankan dalam beberapa peringkat. Universiti dibahagikan mengikut wilayah (Eropah, Asia, Afrika, Amerika, dll.). Setiap daripada mereka menganjurkan peringkat pertengahan, khususnya separuh akhir Eurasia Utara berlaku di universiti kami. Pemenang peringkat serantau mengambil bahagian di peringkat akhir.

Di ICPC, pasukan tiga peserta diminta menyelesaikan beberapa masalah menggunakan satu komputer (tidak disambungkan ke Internet). Justeru, selain kemahiran pengaturcaraan, kemahiran kerja berpasukan juga diuji.

Pasukan Universiti ITMO telah memenangi hadiah utama ICPC sebanyak tujuh kali. Ini adalah rekod mutlak yang telah berdiri selama bertahun-tahun. Mereka akan bertembung dalam pertempuran untuk Piala ICPC 2019 135 kumpulan dari seluruh dunia. Universiti ITMO diwakili tahun ini oleh Ilya Poduremennykh, Stanislav Naumov и Roman Korobkov.

Bagaimanakah perlawanan akhir akan berlangsung?

Semasa pertandingan, pasukan akan menerima satu komputer untuk tiga orang. Ia menjalankan Ubuntu 18.04 dan mempunyai vi/vim, gvim, emacs, gedit, geany dan kate pra-pasang. Anda boleh menulis program dalam Python, Kotlin, Java atau C++.

Apabila pasukan menyelesaikan masalah, ia memajukannya ke pelayan ujian, yang menilai kod tersebut. Peserta tidak tahu apakah ujian yang dilakukan oleh mesin tersebut. Jika kesemuanya berjaya, pasukan menerima mata bonus. Jika tidak, ralat akan dijana dan pelajar dihantar untuk membetulkan kod tersebut.

Mengikut peraturan ICPC, pasukan yang paling banyak menyelesaikan masalah akan menang. Sekiranya terdapat beberapa pasukan sedemikian, maka pemenang ditentukan oleh masa penalti terkecil. Peserta menerima minit penalti untuk setiap masalah yang diselesaikan. Bilangan minit adalah sama dengan masa dari permulaan pertandingan hingga penerimaan tugas oleh pelayan ujian. Jika pasukan itu menemui penyelesaian, maka ia menerima dua puluh minit lagi penalti untuk setiap percubaan yang salah untuk melepasinya.

“Battle Live”: ICPC Final di Porto
icpcnews /Flickr/ CC BY / Foto dari perlawanan akhir ICPC-2016 di Phuket

Примеры задач

Objektif kejohanan memerlukan koordinasi dan tumpuan pasukan. Selain itu, mereka menguji pengetahuan tentang algoritma matematik individu. Berikut ialah contoh tugas yang ditawarkan kepada peserta ICPC 2018:

Dalam tipografi, terdapat istilah "sungai" - ini adalah urutan ruang antara perkataan, yang terbentuk daripada beberapa baris teks. Seorang pakar sungai tertentu (sebenarnya) ingin menerbitkan buku. Dia mahu sungai tipografi terpanjang "terbentuk" pada halaman apabila mencetak dalam fon monospace. Peserta perlu menentukan lebar medan di mana syarat ini akan dipenuhi.

Pada input, program menerima integer n (2 ≤ n ≤ 2), yang menentukan bilangan perkataan dalam teks. Seterusnya, teks telah dimasukkan: perkataan pada satu baris dipisahkan oleh satu ruang dan tidak boleh terdiri daripada lebih daripada 500 aksara.

Pada output, program ini perlu menunjukkan lebar medan di mana "sungai" terpanjang terbentuk, dan panjang sungai ini.

Senarai penuh kembali sejak tahun lepas dan juga penyelesaian kepada mereka dengan penjelasan boleh didapati di laman web ICPC. Ibid. terdapat arkib dengan ujian, yang mana program peserta "didedahkan".

So petang ni di laman web kejohanan dan saluran YouTube Akan ada siaran langsung dari tempat kejadian. Boleh didapati sekarang rakaman pra-tayangan.

Apa lagi yang kami ada di blog di Habré:

Sumber: www.habr.com

Tambah komen