"Battle Live": فینال ICPC در پورتو

امروز فینال مسابقات بین المللی برنامه نویسی ICPC 2019 در شهر پورتو پرتغال برگزار می شود و نمایندگان دانشگاه ITMO و سایر تیم ها از دانشگاه های روسیه، چین، هند، آمریکا و سایر کشورها در آن شرکت خواهند کرد. بیایید با جزئیات بیشتر به شما بگوییم.

"Battle Live": فینال ICPC در پورتو
icpcnews /flickr/ CC BY / عکس هایی از فینال ICPC-2016 در پوکت

ICPC چیست؟

ICPC یک مسابقه بین المللی برنامه نویسی بین دانش آموزان است. آنها بیش از 40 سال برگزار شده اند - اولین فینال گذشت در سال 1977 انتخاب در چند مرحله انجام می شود. دانشگاه ها بر اساس منطقه (اروپا، آسیا، آفریقا، آمریکا و غیره) تقسیم می شوند. هر یک از آنها میزبان مراحل میانی، به ویژه نیمه نهایی اوراسیا شمالی هستند در دانشگاه ما انجام شد. برندگان مراحل منطقه ای در فینال شرکت می کنند.

در ICPC، از تیم‌های سه شرکت‌کننده خواسته می‌شود تا با استفاده از یک کامپیوتر (به اینترنت متصل نیست) تعدادی از مشکلات را حل کنند. بنابراین، علاوه بر مهارت های برنامه نویسی، مهارت های کار گروهی نیز مورد آزمایش قرار می گیرد.

تیم های دانشگاه ITMO هفت بار برنده جایزه اصلی ICPC شده اند. این یک رکورد مطلق است که سال ها پابرجاست. آنها در نبرد برای جام ICPC 2019 به مصاف هم خواهند رفت 135 گروه از سراسر کره زمین. دانشگاه ITMO امسال توسط ایلیا پودورمنیخ, استانیسلاو نائوموف и رومن کوروبکوف.

فینال چگونه برگزار می شود؟

در طول مسابقات، تیم ها یک کامپیوتر دریافت خواهد کرد برای سه نفر اوبونتو 18.04 را اجرا می کند و vi/vim، gvim، emacs، gedit، geany و kate از پیش نصب شده است. شما می توانید برنامه ها را در پایتون، کاتلین، جاوا یا سی پلاس پلاس بنویسید.

هنگامی که یک تیم مشکلی را حل می کند، آن را به سرور آزمایشی ارسال می کند که کد را ارزیابی می کند. شرکت‌کنندگان نمی‌دانند دستگاه در حال انجام چه آزمایش‌هایی است. اگر همه آنها موفق باشند، تیم امتیاز پاداش دریافت می کند. در غیر این صورت خطایی ایجاد می شود و دانش آموزان برای تصحیح کد ارسال می شوند.

طبق قوانین ICPC، تیمی که بیشترین مشکلات را حل کند برنده است. اگر چندین تیم از این دست وجود داشته باشد، برنده با کمترین زمان پنالتی مشخص می شود. شرکت کنندگان برای هر مشکلی که حل می شود دقایق پنالتی دریافت می کنند. تعداد دقیقه برابر است با زمان شروع مسابقه تا قبولی کار توسط سرور آزمون. اگر تیم راه حلی پیدا کند، به ازای هر تلاش نادرست برای پاس دادن، بیست دقیقه دیگر جریمه دریافت می کند.

"Battle Live": فینال ICPC در پورتو
icpcnews /flickr/ CC BY / عکس هایی از فینال ICPC-2016 در پوکت

نمونه مشکلات

اهداف قهرمانی نیازمند هماهنگی و تمرکز تیمی است. علاوه بر این، آنها دانش الگوریتم های ریاضی فردی را آزمایش می کنند. در اینجا نمونه ای از کاری است که به شرکت کنندگان در ICPC 2018 ارائه شده است:

در تایپوگرافی، اصطلاح "رودخانه" وجود دارد - این دنباله ای از فضاهای بین کلمات است که از چندین خط متن تشکیل شده است. یک متخصص رودخانه (واقعاً) می خواهد کتابی منتشر کند. او می‌خواهد هنگام چاپ با فونت تک‌فاصله، طولانی‌ترین رودخانه‌های چاپی روی صفحه شکل بگیرند. شرکت‌کنندگان باید عرض فیلدهایی را که در آن این شرط برآورده می‌شود، تعیین می‌کردند.

در ورودی، برنامه یک عدد صحیح n (2 ≤ n ≤ 2) دریافت کرد که تعداد کلمات متن را تعیین می کند. بعد، متن وارد شد: کلمات در یک خط با یک فاصله از هم جدا شده بودند و نمی توانستند بیش از 500 کاراکتر داشته باشند.

در خروجی، برنامه باید عرض میدان هایی را که در آن طولانی ترین "رودخانه" تشکیل می شود و طول این رودخانه را نشان می داد.

لیست کامل برگشت از سال گذشته و همچنین راه حل برای آنها با توضیحات را می توان در وب سایت ICPC یافت. همانجا یک آرشیو با تست وجود دارد، که برنامه های شرکت کنندگان در معرض آن قرار گرفت.

پس امروز بعدازظهر در سایت قهرمانی و YouTube-کانالیل پخش زنده از محل پخش خواهد شد. در حال حاضر موجود است ضبط های قبل از نمایش.

چه چیز دیگری در وبلاگ Habré داریم:

منبع: www.habr.com

اضافه کردن نظر