“Canlı Savaş”: Porto'daki ICPC Finali

bugün Uluslararası programlama yarışması ICPC 2019'un finalleri Portekiz'in Porto şehrinde yapılacak. Yarışmaya ITMO Üniversitesi temsilcileri ve Rusya, Çin, Hindistan, ABD ve diğer ülkelerdeki üniversitelerden diğer ekipler katılacak. Size daha ayrıntılı olarak anlatalım.

“Canlı Savaş”: Porto'daki ICPC Finali
icpcnews /flickr/ CC BY / Phuket'teki ICPC-2016 finallerinden fotoğraflar

ICPC nedir?

ICPC öğrenciler arasında düzenlenen uluslararası bir programlama yarışmasıdır. 40 yılı aşkın süredir yapılıyor - ilk final Ben 1977'de. Seçim birkaç aşamada gerçekleştirilir. Üniversiteler bölgelere göre (Avrupa, Asya, Afrika, Amerika vb.) ayrılmıştır. Her biri, özellikle Kuzey Avrasya yarı finalleri olmak üzere ara aşamalara ev sahipliği yapıyor Üniversitemizde gerçekleşti. Bölgesel etapların galipleri finallere katılıyor.

ICPC'de, üç katılımcıdan oluşan ekiplerden bir bilgisayarı (İnternete bağlı olmayan) kullanarak bir dizi sorunu çözmeleri istenir. Böylece programlama becerilerinin yanı sıra takım çalışması becerileri de test ediliyor.

ITMO Üniversitesi ekipleri ICPC ana ödülünü yedi kez kazandı. Bu, uzun yıllardır ayakta kalan mutlak bir rekordur. ICPC Kupası 2019 mücadelesinde çarpışacaklar Gezegenin her yerinden 135 grup. ITMO Üniversitesi bu yıl temsil ediliyor Ilya Poduremennykh, Stanislav Naumov и Roman Korobkov.

Final nasıl gerçekleşecek?

Yarışma sırasında takımlar bir bilgisayar alacak üç kişi için. Ubuntu 18.04'ü çalıştırır ve vi/vim, gvim, emacs, gedit, geany ve kate önceden yüklenmiştir. Programları Python, Kotlin, Java veya C++ ile yazabilirsiniz.

Bir ekip bir sorunu çözdüğünde, bunu kodu değerlendirecek olan test sunucusuna iletir. Katılımcılar makinenin hangi testleri yaptığını bilmiyor. Hepsi başarılı olursa takım bonus puan alır. Aksi halde hata oluşur ve öğrenciler kodu düzeltmeye gönderilir.

ICPC kurallarına göre en çok sorunu çözen takım kazanır. Bu tür birkaç takım varsa, kazanan en küçük ceza süresine göre belirlenir. Katılımcılar çözülen her problem için ceza tutanakları alırlar. Dakika sayısı, yarışmanın başlangıcından görevin test sunucusu tarafından kabul edilmesine kadar geçen süreye eşittir. Takım bir çözüm bulursa, her hatalı pas girişimi için bir yirmi dakika daha ceza alır.

“Canlı Savaş”: Porto'daki ICPC Finali
icpcnews /flickr/ CC BY / Phuket'teki ICPC-2016 finallerinden fotoğraflar

Görev örnekleri

Şampiyonanın hedefleri takım koordinasyonu ve konsantrasyonunu gerektirir. Ek olarak bireysel matematiksel algoritmalara ilişkin bilgileri de test ederler. ICPC 2018 katılımcılarına sunulan bir göreve örnek:

Tipografide "nehir" terimi vardır - bu, birkaç metin satırından oluşan kelimeler arasındaki boşluk dizisidir. Belli bir nehir uzmanı (gerçekten) bir kitap yayınlamak istiyor. Tek aralıklı yazı tipiyle yazdırırken sayfada en uzun tipografik nehirlerin "oluşmasını" istiyor. Katılımcıların bu koşulun karşılanacağı alanların genişliğini belirlemeleri gerekiyordu.

Girişte program, metindeki kelime sayısını belirleyen bir n (2 ≤ n ≤ 2) tamsayısını aldı. Daha sonra metin girildi: bir satırdaki kelimeler bir boşlukla ayrıldı ve 500 karakterden fazla içeremezdi.

Çıktıda programın en uzun “nehrin” oluştuğu tarlaların genişliğini ve bu nehrin uzunluğunu göstermesi gerekiyordu.

Tam liste geri geçen yıldan bu yana ve aynı zamanda açıklamalarla bunlara çözümler ICPC'nin web sitesinde bulunabilir. Aynı eser. testlerin olduğu bir arşiv varkatılımcıların programlarının "maruz kaldığı".

Yani bu öğleden sonra şampiyonanın web sitesinde ve YouTube kanalı Olay yerinden canlı yayın yapılacak. Şu an müsait gösteri öncesi kayıtlar.

Habré'deki blogda başka neler var:

Kaynak: habr.com

Yorum ekle