گزارش اختصاصی از مسابقه‌ی برنامه‌نویسی بیان (ویرایش: عکس‌ها اضافه‌شدند)

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

بنر کانتست بیان
بنر کانتست بیان

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

شرکت خصوصی بیان سال گذشته کانتستی را برگزار کرد، که در دو قسمت دانش‌آموزی و آزاد برگزار می‌شد. شرکت در قسمت آزاد محدودیتی نداشت، ولی بخش دانش‌آموزی (همان‌گونه که از اسم آن برمی‌آید!) ویژه‌ی دانش‌آموزان بود. این کانتست سه مرحله داشت که دو مرحله‌ی نخست آن به شکل آنلاین برگزار شدند و برگزیدگان مرحله‌ی دوم به مرحله‌ی حضوری راه یافتند، که در شرکت بیان برگزار شد. من درباره‌ی روند برگزاری نخستین کانتست بیان اطلاع چندانی ندارم؛ بنابراین از ذکر جزئیات بیشتر خودداری می‌کنم.

امسال نیز دومین کانتست بیان طبق برنامه برگزار شد. وجه تمایز این کانتست، که سبب بازتاب گسترده‌ی داخلی آن شد، بین‌المللی بودن آن است. امسال شرکت بیان با همکاری سایت Codeforces مرحله‌ی گزینش این کانتست را به زبان انگلیسی و برای شرکت‌کنندگان خارجی نیز برگزار کرد. سایت Codeforces یکی از معتبرترین و مشهورترین سایت‌های برگزارکننده‌ی کانتست‌های آنلاین است، که پیش از این هم مسابقاتی مانند VKCup را برگزارکرده‌است.

روند گزینش
روند گزینش شرکت‌کنندگان مرحله‌ی حضوری

نتیجه این که برخی از برترین برنامه‌نویسان جهان در زمینه کانتست برای شرکت در مرحله‌ی حضوری برگزیده‌شدند. برخی از آن‌ها عبارتند از:

  • گنادی کوروتکویچ (tourist) از بلاروس، دارنده‌ی 6 مدال طلای المپیاد جهانی کامپیوتر که دوتای آن‌ها را با حدّاکثر نمره‌ی ممکن کسب کرده است. همچنین نفر اوّل جهان در سایت Codeforces
  • میخاییل کِوِر (cerealguy)، نفر 24ام جهان در سایت Codeforces (مطمئن نیستم، ولی احتمالاً در ACM هم مقام آورده‌است)
  • ماکوتو سوجیما (rng_58) از ژاپن، نفر دوم جهان در سایت Codeforces
  • پیتر شیه (peter50216) از تایوان، نفر ششم جهان در سایت Codeforces
  • ایگور کولیکو (Egor) از روسیه، نفر پنجم جهان در سایت Codeforces

همچنین برنامه‌نویسان دیگری از چین، لهستان، ایالات متّحده و اوکراین نیز برگزیده‌شدند که در نهایت، برخی از آن‌ها در مرحله‌ی حضوری شرکت‌کردند.

فهرست شرکت‌کنندگان کانتست بین‌المللی و رتبه‌هایشان را در اینجا و فهرست شرکت‌کنندگان ایرانی و رتبه‌های آن‌ها را در اینجا می‌توانید ببینید.

پس از برگزاری مراحل آنلاین و گزینش شرکت‌کنندگان مرحله‌ی حضوری، اعلام شد که مرحله‌ی حضوری در تاریخ 27 بهمن و در دانشگاه شریف برگزار خواهد شد، که در نهایت تاریخ به شنبه 28ام تغییر یافت و مکان نیز به هتل آزادی پارسیان تهران منتقل شد.

امّا پس از این مقدمه‌ی طولانی، به اصل ماجرا و مرحله‌ی بین‌المللی مسابقه می‌رسیم.

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

چند نفر از شرکت کنندگان ایرانی در لابی هتل - Codeforces.com
چند نفر از شرکت کنندگان ایرانی در لابی هتل – Codeforces.com

افرادی که در عکس بالا دیده می‌شوند (از راست به چپ):

فرزاد عبدالحسینی (مدال طلای کشوری المپیاد کامپیوتر) – سیّد حامد ولی‌زاده (مدال طلای جهانی المپیاد کامپیوتر و نفر سوم مسابقه بیان در ایران) – نمی‌شناسم – حامد صالح (مدال طلای کشوری المپیاد کامپیوتر) – علیزضا فرهادی (مدال نقره‌ی جهانی المپیاد کامپیوتر) – نمی‌شناسم

لابی هتل از بالا - Codeforces.com
یلابی هتل از بالا – Codeforces.com

در سمت راست تصویر، شرکت‌کنندگان خارجی قرار دارند. (آن‌هایی که تی‌شرت زرد پوشیده‌اند)

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

Egor, cerealguy, peter50216, liympanda, watashi, kelvin, Dmitry_Egorovanrieff, ivanromanov

ویرایش: از آنجا که در کانتست گزینشی بیان، نام ایوان رومانوف در بیست نفر برتر دیده نمی‌شود، احتمال می‌رود که او تنها برای تهیه‌ی گزارش به ایران آمده‌باشد.

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

در این مسابقه، شرکت بیان رایانه‌ای را به شرکت‌کنندگان ارائه نمی‌داد و همه با لپتاپ شرکت می‌کردند. به همین دلیل، برای تنظیم سیستم‌ها نیز زمانی در نظر گرفته‌شده‌بود. بر اساس برنامه، مسابقه باید در ساعت 10 صبح آغاز می‌شد؛ اما با تأخیر روبه‌رو شد و (پس از تحویل تی‌شرت‌ها و تنظیم سیستم‌ها) ساعت 12:32 دقیقه آغاز شد.

Codeforces.com
Codeforces.com

در این مسابقه، 7 سوال برای 3 ساعت درنظرگرفته‌شده‌بودند که یک ربع پیش از پایان این زمان، کانتست به مدّت نیم‌ساعت تمدید شد و در نهایت سه‌ساعت و نیمه برگزار شد. سوال‌ها سخت بودند، به گونه‌ای که بسیاری از شرکت‌کنندگان 0 تا 1 سوال حل کردند! طبق آماری که بعداً اعلام شد، نفر نخست جهان 4 سوال و نفر نخست ایران 2 سوال حل کرده‌اند. سوالات مسابقه هنوز در سایت بیان قرار نگرفته‌اند، ولی احتمالاً به زودی در آنجا قرار خواهند گرفت.

غرق در کانتست! - Codeforces.com
غرق در کانتست! – Codeforces.com

یکی از حواشی مسابقه‌ی اصلی این بود که صورت سؤال‌ها تنها به زبان انگلیسی موجود بود و ترجمه‌ی فارسی ارائه نشد. با وجود این که این مسئله مشکل‌ساز نشد، ولی از مسابقه‌ای که یک شرکت ایرانی در ایران برگزار می‌کند، انتظار می‌رود که سؤالات به زبان فارسی هم موجود باشند.

ویرایش: حاشیه‌ی جالب دیگر این بود که به ازای هر مسئله‌ای که یک نفر حل می‌کرد، بادکنکی با رنگی خاص (ویژه‌ی آن مسئله) جایزه می‌گرفت. این رسم مربوط به مسابقات ACM است. نویسندگان 2برنامه‌نویس قبلاً این رسم را در H2PL (لیگ برنامه‌نویسی راهنمایی حلّی 2)، KPL (همان لیگ که بعداً نامش تغییر کرد) و حلّی‌نت (مسابقه‌ی برنامه‌نویسی دبیرستان علّامه‌حلّی که سال گذشته پس از تأخیری چندین ساله برگزار شد و امسال برگزار نمی‌شود) دیده‌اند.

پس از این مسابقه و صرف نهار، چالش Funkoders (با k!) قرار بود برگزارشود که ماهیت آن را هنوز اعلام نکرده‌بودند، ولی شایعاتی وجود داشت مبنی بر آن که قرار است در این مسابقه، ایرانیان هم بتوانند در برابر رقبای خارجی قد علم کنند. در اصل، این برنامه هم یک کانتست با شیوه‌ی قضاوتی مشابه کانتست اصلی بود، ولی با این تفاوت که 15 سوال آسان و 42 دقیقه وقت داشت. البته در برنامه‌ی اصلی قرار بوده که این کانتست 2 ساعت به طول بینجامد؛ ولی به دلیل تأخیر در آغاز برنامه‌ی اصلی، زمان آن کاهش یافت.

ویرایش: یکی از حواشی مسابقه‌ی Funkoders حضور دو بازیگر بود که نقش مجسمه را ایفا می‌کردند و البته هر چند دقیقه یک بار هم تغییر وضعیت می‌دادند.

مجسمه‌ها - Codeforces.com
مجسمه‌ها – Codeforces.com

این مجسمه‌ها واقعاً به خوبی از پس نقششان برآمدند؛ چراکه با وجود خنده‌ها و تلاش‌های مجدّانه‌ی بنده و دوستان، مرتکب هیچ اشتباهی نشدند!

مجسمه‌ها - nardebaan.ir
مجسمه‌ها – nardebaan.ir

 

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

در مراسم اختتامیه، پس از پخش چند قطعه موسیقی زنده و غیرزنده و سرود ملی و تلاوت سوره‌ی حمد و سخنرانی مدیرعامل شرکت بیان، نوبت به اعلام برندگان رسید:

  • پیتر شیه از تایوان نفر اوّل جهان شد و به او مدال طلا، سه سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی (یک کوزه که فکر می‌کنم میناکاری شده‌بود) تعلّق گرفت. 
  • میخاییل کِوِر نفر دوم جهان شد و مدال نقره، دو سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی برد.
  • بر خلاف انتظارات، ایگور کولیکو اوّل نشد و سوم شد و مدال برنز، یک سکّه‌ی تمام بهار آزادی و صنایع دستی ایرانی هدیه گرفت.
سه نفر اوّل جهان - nardebaan.ir
سه نفر اوّل جهان – nardebaan.ir

از راست به چپ: پیتر شیه، میخاییل کِوِر، ایگور کولیکو

 

علاوه بر آن، به نفرات برگزیده‌ی ایران نیز جوایزی اهدا شد:

  • سهیل احسانی نفر نخست ایران شد. به او مدال طلا و یک و نیم میلیون تومان وجه نقد تعلّق گرفت.
  • علی فیوج نوملی نفر دوم ایران شد و مدال نقره و یک میلیون تومان وجه نقد برد.
  • سید حامد ولی‌زاده نفر سوم ایران شد و مدال برنز و پانصدهزار تومان وجه نقد جایزه گرفت.
سه نفر برتر ایران - nardebaan.ir
سه نفر برتر ایران – nardebaan.ir

نتایج نهایی را در این نشانی می‌توانید ببینید. البته برخی شرکت‌کنندگان در این جدول حضور ندارند که احتمالاً هیچ سوالی حل نکرده‌اند. (من هم در این جدول حضور ندارم!) نکته جالب این که تمامی 5 نفر نخست ایران، 2 سوال حل کرده‌بودند! و تفاوت میان نفر سوم و چهارم ایران کمتر از یک نمره بود!

پس از مراسم اختتامیه نیز طبق برنامه ضیافت شام برگزار شد که واقعاً جای تقدیر داشت.

سخن پایانی

فکر می‌کنم که این مسابقه، نخستین تجربه‌ی این‌چنینی در ایران بوده‌باشد. کیفیت برگزاری مسابقه واقعاً عالی بود. با این وجود، سخت‌بودن بیش از حدّ سوال‌های کانتست اصلی، باعث نارضایتی برخی از شرکت‌کنندگان شد. با این وجود، چنین رویدادهایی واقعاً جای تقدیر و تشکّر دارند و برگزارشدن آن‌ها در ایران واقعاً مایه‌ی افتخار است. امیدوارم که هزینه‌ی سنگین و برخی مشکلات دیگر جلوی تکرار چنین رویدادهایی را نگیرد. به هر کسی که دستی در برنامه‌نویسی دارد، توصیه می‌کنم که مسابقه‌ی سال بعد بیان را از دست ندهد.

مسئله‌ای که بیش از همه جای تأمّل داشت، این بود که در میان پنج نفر برتر جهان، خبری از ایرانیان نبود که با توجه به شرایط، این یک باخت در خانه به حساب می‌آید. البته با توجه به این که شرکت‌کنندگان خارجی از میان برترین برنامه‌نویسان جهان انتخاب شده‌بودند، واقعاً این پدیده قابل پیش‌بینی بود؛ ولی باز هم باید تلاش کنیم و امیدوار باشیم که در مسابقه‌های بعدی، بدون درنظرگرفتن سهمیه برای ایرانیان، سه نفر از آن‌ها رتبه‌های برتر را تصاحب کنند.

منبع: در نوشتن این مطلب، علاوه بر مشاهدات شخصی، از تصاویر و مطالب وبلاگ رسمی شرکت بیان و وبلاگ و سایت کانتست بیان نیز استفاده کردم. علاوه بر آن، از برخی مطالب موچود در سایت Codeforces، به ویژه بلاگ ایوان رومانوف، نیز استفاده کردم. برای عکس‌ها، علاوه بر این منابع، از سایت نردبان نیز استفاده‌شده‌است.

شما از چنین کانتستی چه انتظاری دارید؟ آیا مسابقه‌ی امسال به نظر شما رضایت‌بخش بود؟

پی‌نوشت: فردا گالری عکس هم افزوده خواهد شد. افزوده شد. البته به دلیل کم‌تجربگی نویسنده، عکس اختصاصی مناسبی در دسترس نیست و عکس‌ها از منابع دیگر جمع‌آوری شده‌اند.

5 دیدگاه در “گزارش اختصاصی از مسابقه‌ی برنامه‌نویسی بیان (ویرایش: عکس‌ها اضافه‌شدند)

  1. سلام
    به نظر من تجربه حضور در چنین مسابقاتی خیلی ارزشمند است
    ان شاءا… در دوره های بعد مقام اول را کسب کنید
    من به شخصه حسرت نوشتن یک برنامه ساده را دارم در حد محاسبه مساحت یک مستطیل و حتی ساده تر
    شرکت در این مسابقات برایم رویاست
    اموزش که منتفی شد کاش حداقل شما یک نقشه راه را بیان می کردید راهی که الان شما را به این جا رسانده
    راستی عکس های ان شرکت کننده هم که در وبلاگش بود جالب بود دقت کردید از چراغ راهنما وتایمش و وجود پلیس در وسط چهارراه عکس گرفته؟!
    به تازگی در کلاس های راهنمایی رانندگی از تیمسار اموزش دهنده ائین نامه شنیدم می گفت این مسائل در کشورهای پیشرفته از جمله وجود پلیس به این شکل منتفی است.چراغ راهنما با این تایم های بالا به هیچ عنوان وجود نداردو..
    راستی ان مجسمه چرا تغییر حالت می دهن مگه مجسمه نیستن یا من اشتباه فهمیدم؟ادم واقعی اند؟

    1. سلام.
      آن مجسمه ها آدم هايى اند كه سرتاپايشان را با اسپرى رنگ كرده اند.
      در مورد آموزش برنامه نويسى، آموزش ماهى گيرى سخت از گرفتن ماهى است! البته آن برنامه هنوز منتفى نشده. من از جزئياتش بى خبرم.
      در نهايت، بدانيد كه حتماً برنامه نويسى ساده تر از آن است كه فكر مى كنيد.

  2. با سلام و خسته نباشید

    قصد دارم توی سومین دوره ی مسابقات برنامه نویسی بیان شرکت کنم. توی نت کلی سرچ کردم ولی به غیر از ۴ تا نمونه سوال از مرحله ی انتخاباتی سری اول مسابقات هیچ نمونه سوال دیگه ای پیدا نکردم.  همون ۴ تا سوال رو هم یکی از شرکت کننده ها توی وبلاگش توضیح داده بود یعنی اصل سوال نبود. هم به فارسی سرچ کردم هم به انگلیسی ولی خبری نبود.

    شما که خودتون توی سری اول مسابقات شرکت کردید (در مورد سری دوم خبری توی وبتون ندیدم که شرکت کرده بودید یا نه) امکانش هست اگه چیزی از نمونه سوال ها یا حداقل شبیه شون به یادتون مونده رو توی وبتون بذارید که ازش استفاده کنیم؟ یا منبعی مرجعی وبسایتی می شناسید که نمونه سوال ها رو گذاشته باشه؟ هیچ جوری امکانش نیست بفهمیم با چه مدل سوال هایی ممکنه رو به رو بشم؟

    اگه بتونید کمکی در این مورد بکنید ممنون میشم.

    سپاسگزارم.

  3. تصحیح میکنم….

    فکر کنم توی دومین دوره ی مسابقات شرکت کرده بودید که من توی کامنت قبل به اشتباه اولین سری مسابقات نوشتم.

    مورد دیگه در مورد ایمیل وبسایت تون هست.

    از کدوم قسمت سایت میشه ایمیل فرستاد؟ در قسمت ارتباط با ما نوشته شده:

    کافیست به نشانی info در 2barnamenevis.com، ایمیل بفرستید.

    1. سلام. متاسفانه به دلایلی فرم تماس نداریم. ولی شما می‌تونید به ما ایمیل بزنید. از سرویسی که برای ایمیل زدن به دیگران ازش استفاده می‌کنید استفاده کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.