شنبهی این هفته در هتل آزادی پارسیان تهران، مراسمی برگزار شد که اگر اشتباه نکنم، بزرگترین مسابقهی برنامهنویسی بینالمللی است که تا کنون توسط یک شرکت یا سازمان ایرانی برگزار شده (طبیعی است که مسابقاتی مانند ACM که متولیانی خارجی دارند، را به حساب نیاوردهام).
از آنجا که بنده هم فرصت شرکت در این مسابقهی برنامهنویسی (کانتست) را داشتم، تصمیم گرفتیم که در اینجا گزارشی از نحوه برگزاری و رویدادهای شنبه را بنویسم.
شرکت خصوصی بیان سال گذشته کانتستی را برگزار کرد، که در دو قسمت دانشآموزی و آزاد برگزار میشد. شرکت در قسمت آزاد محدودیتی نداشت، ولی بخش دانشآموزی (همانگونه که از اسم آن برمیآید!) ویژهی دانشآموزان بود. این کانتست سه مرحله داشت که دو مرحلهی نخست آن به شکل آنلاین برگزار شدند و برگزیدگان مرحلهی دوم به مرحلهی حضوری راه یافتند، که در شرکت بیان برگزار شد. من دربارهی روند برگزاری نخستین کانتست بیان اطلاع چندانی ندارم؛ بنابراین از ذکر جزئیات بیشتر خودداری میکنم.
امسال نیز دومین کانتست بیان طبق برنامه برگزار شد. وجه تمایز این کانتست، که سبب بازتاب گستردهی داخلی آن شد، بینالمللی بودن آن است. امسال شرکت بیان با همکاری سایت Codeforces مرحلهی گزینش این کانتست را به زبان انگلیسی و برای شرکتکنندگان خارجی نیز برگزار کرد. سایت Codeforces یکی از معتبرترین و مشهورترین سایتهای برگزارکنندهی کانتستهای آنلاین است، که پیش از این هم مسابقاتی مانند VKCup را برگزارکردهاست.
نتیجه این که برخی از برترین برنامهنویسان جهان در زمینه کانتست برای شرکت در مرحلهی حضوری برگزیدهشدند. برخی از آنها عبارتند از:
- گنادی کوروتکویچ (tourist) از بلاروس، دارندهی 6 مدال طلای المپیاد جهانی کامپیوتر که دوتای آنها را با حدّاکثر نمرهی ممکن کسب کرده است. همچنین نفر اوّل جهان در سایت Codeforces
- میخاییل کِوِر (cerealguy)، نفر 24ام جهان در سایت Codeforces (مطمئن نیستم، ولی احتمالاً در ACM هم مقام آوردهاست)
- ماکوتو سوجیما (rng_58) از ژاپن، نفر دوم جهان در سایت Codeforces
- پیتر شیه (peter50216) از تایوان، نفر ششم جهان در سایت Codeforces
- ایگور کولیکو (Egor) از روسیه، نفر پنجم جهان در سایت Codeforces
همچنین برنامهنویسان دیگری از چین، لهستان، ایالات متّحده و اوکراین نیز برگزیدهشدند که در نهایت، برخی از آنها در مرحلهی حضوری شرکتکردند.
فهرست شرکتکنندگان کانتست بینالمللی و رتبههایشان را در اینجا و فهرست شرکتکنندگان ایرانی و رتبههای آنها را در اینجا میتوانید ببینید.
پس از برگزاری مراحل آنلاین و گزینش شرکتکنندگان مرحلهی حضوری، اعلام شد که مرحلهی حضوری در تاریخ 27 بهمن و در دانشگاه شریف برگزار خواهد شد، که در نهایت تاریخ به شنبه 28ام تغییر یافت و مکان نیز به هتل آزادی پارسیان تهران منتقل شد.
امّا پس از این مقدمهی طولانی، به اصل ماجرا و مرحلهی بینالمللی مسابقه میرسیم.
شنبه صبح که وارد هتل شدم، علاوه بر شماری از شرکتکنندگان ایرانی، شرکتکنندگان خارجی نیز در لابی مستقر بودند. متأسّفانه تصویر مناسبی از شرکتکنندگان خارجی در لابی پیدا نکردم، امّا ایوان رومانوف تصاویر خوب (و زیادی!) تهیه کرده که میتوانید آنها را در بلاگ او در Codeforces ببینید. بر اساس آنچه که رومانوف در بلاگش نوشته، شرکتکنندگان خارجی از پنجشنبه تا یکشنبه در ایران بودهاند.
افرادی که در عکس بالا دیده میشوند (از راست به چپ):
فرزاد عبدالحسینی (مدال طلای کشوری المپیاد کامپیوتر) – سیّد حامد ولیزاده (مدال طلای جهانی المپیاد کامپیوتر و نفر سوم مسابقه بیان در ایران) – نمیشناسم – حامد صالح (مدال طلای کشوری المپیاد کامپیوتر) – علیزضا فرهادی (مدال نقرهی جهانی المپیاد کامپیوتر) – نمیشناسم
در سمت راست تصویر، شرکتکنندگان خارجی قرار دارند. (آنهایی که تیشرت زرد پوشیدهاند)
در میان ایرانیها، همهی اعضای تیم المپیاد جهانی کامپیوتر ایران (که امسال در ایتالیا برگزار شد) حضور داشتند (سعید ایلچی و حامد ولیزاده که مدال طلا گرفتند و علیرضا فرهادی و محمدرضا ملکی که نقره شدند). علاوه بر آن، بسیاری از شرکتکنندگان دیگر نیز مدالآوران کشوری و جهانی امسال و سالهای گذشته بودند. در میان شرکتکنندگان خارجی نیز افراد زیر حضور داشتند (البته برخی از آنها در لابی هتل شناسایی نشدند!):
Egor, cerealguy, peter50216, liympanda, watashi, kelvin, Dmitry_Egorov, anrieff, ivanromanov
ویرایش: از آنجا که در کانتست گزینشی بیان، نام ایوان رومانوف در بیست نفر برتر دیده نمیشود، احتمال میرود که او تنها برای تهیهی گزارش به ایران آمدهباشد.
ایوان رومانوف در تمام این مدت وقایع را به شکل زنده پوشش میداد که حاصل آن را میتوانید در بلاگ او در Codeforces ببینید. نکته فرعی جالب هم این که، علیرغم اسمش، او از کشور سوییس به ایران آمدهبود.
در این مسابقه، شرکت بیان رایانهای را به شرکتکنندگان ارائه نمیداد و همه با لپتاپ شرکت میکردند. به همین دلیل، برای تنظیم سیستمها نیز زمانی در نظر گرفتهشدهبود. بر اساس برنامه، مسابقه باید در ساعت 10 صبح آغاز میشد؛ اما با تأخیر روبهرو شد و (پس از تحویل تیشرتها و تنظیم سیستمها) ساعت 12:32 دقیقه آغاز شد.
در این مسابقه، 7 سوال برای 3 ساعت درنظرگرفتهشدهبودند که یک ربع پیش از پایان این زمان، کانتست به مدّت نیمساعت تمدید شد و در نهایت سهساعت و نیمه برگزار شد. سوالها سخت بودند، به گونهای که بسیاری از شرکتکنندگان 0 تا 1 سوال حل کردند! طبق آماری که بعداً اعلام شد، نفر نخست جهان 4 سوال و نفر نخست ایران 2 سوال حل کردهاند. سوالات مسابقه هنوز در سایت بیان قرار نگرفتهاند، ولی احتمالاً به زودی در آنجا قرار خواهند گرفت.
یکی از حواشی مسابقهی اصلی این بود که صورت سؤالها تنها به زبان انگلیسی موجود بود و ترجمهی فارسی ارائه نشد. با وجود این که این مسئله مشکلساز نشد، ولی از مسابقهای که یک شرکت ایرانی در ایران برگزار میکند، انتظار میرود که سؤالات به زبان فارسی هم موجود باشند.
ویرایش: حاشیهی جالب دیگر این بود که به ازای هر مسئلهای که یک نفر حل میکرد، بادکنکی با رنگی خاص (ویژهی آن مسئله) جایزه میگرفت. این رسم مربوط به مسابقات ACM است. نویسندگان 2برنامهنویس قبلاً این رسم را در H2PL (لیگ برنامهنویسی راهنمایی حلّی 2)، KPL (همان لیگ که بعداً نامش تغییر کرد) و حلّینت (مسابقهی برنامهنویسی دبیرستان علّامهحلّی که سال گذشته پس از تأخیری چندین ساله برگزار شد و امسال برگزار نمیشود) دیدهاند.
پس از این مسابقه و صرف نهار، چالش Funkoders (با k!) قرار بود برگزارشود که ماهیت آن را هنوز اعلام نکردهبودند، ولی شایعاتی وجود داشت مبنی بر آن که قرار است در این مسابقه، ایرانیان هم بتوانند در برابر رقبای خارجی قد علم کنند. در اصل، این برنامه هم یک کانتست با شیوهی قضاوتی مشابه کانتست اصلی بود، ولی با این تفاوت که 15 سوال آسان و 42 دقیقه وقت داشت. البته در برنامهی اصلی قرار بوده که این کانتست 2 ساعت به طول بینجامد؛ ولی به دلیل تأخیر در آغاز برنامهی اصلی، زمان آن کاهش یافت.
ویرایش: یکی از حواشی مسابقهی Funkoders حضور دو بازیگر بود که نقش مجسمه را ایفا میکردند و البته هر چند دقیقه یک بار هم تغییر وضعیت میدادند.
این مجسمهها واقعاً به خوبی از پس نقششان برآمدند؛ چراکه با وجود خندهها و تلاشهای مجدّانهی بنده و دوستان، مرتکب هیچ اشتباهی نشدند!
پس از آن، نوبت به صرف چای و کیک و استراحت در لابی رسید. بعد هم مراسم اختتامیه آغاز شد.
در مراسم اختتامیه، پس از پخش چند قطعه موسیقی زنده و غیرزنده و سرود ملی و تلاوت سورهی حمد و سخنرانی مدیرعامل شرکت بیان، نوبت به اعلام برندگان رسید:
- پیتر شیه از تایوان نفر اوّل جهان شد و به او مدال طلا، سه سکّهی تمام بهار آزادی و صنایع دستی ایرانی (یک کوزه که فکر میکنم میناکاری شدهبود) تعلّق گرفت.
- میخاییل کِوِر نفر دوم جهان شد و مدال نقره، دو سکّهی تمام بهار آزادی و صنایع دستی ایرانی برد.
- بر خلاف انتظارات، ایگور کولیکو اوّل نشد و سوم شد و مدال برنز، یک سکّهی تمام بهار آزادی و صنایع دستی ایرانی هدیه گرفت.
از راست به چپ: پیتر شیه، میخاییل کِوِر، ایگور کولیکو
علاوه بر آن، به نفرات برگزیدهی ایران نیز جوایزی اهدا شد:
- سهیل احسانی نفر نخست ایران شد. به او مدال طلا و یک و نیم میلیون تومان وجه نقد تعلّق گرفت.
- علی فیوج نوملی نفر دوم ایران شد و مدال نقره و یک میلیون تومان وجه نقد برد.
- سید حامد ولیزاده نفر سوم ایران شد و مدال برنز و پانصدهزار تومان وجه نقد جایزه گرفت.
نتایج نهایی را در این نشانی میتوانید ببینید. البته برخی شرکتکنندگان در این جدول حضور ندارند که احتمالاً هیچ سوالی حل نکردهاند. (من هم در این جدول حضور ندارم!) نکته جالب این که تمامی 5 نفر نخست ایران، 2 سوال حل کردهبودند! و تفاوت میان نفر سوم و چهارم ایران کمتر از یک نمره بود!
پس از مراسم اختتامیه نیز طبق برنامه ضیافت شام برگزار شد که واقعاً جای تقدیر داشت.
سخن پایانی
فکر میکنم که این مسابقه، نخستین تجربهی اینچنینی در ایران بودهباشد. کیفیت برگزاری مسابقه واقعاً عالی بود. با این وجود، سختبودن بیش از حدّ سوالهای کانتست اصلی، باعث نارضایتی برخی از شرکتکنندگان شد. با این وجود، چنین رویدادهایی واقعاً جای تقدیر و تشکّر دارند و برگزارشدن آنها در ایران واقعاً مایهی افتخار است. امیدوارم که هزینهی سنگین و برخی مشکلات دیگر جلوی تکرار چنین رویدادهایی را نگیرد. به هر کسی که دستی در برنامهنویسی دارد، توصیه میکنم که مسابقهی سال بعد بیان را از دست ندهد.
مسئلهای که بیش از همه جای تأمّل داشت، این بود که در میان پنج نفر برتر جهان، خبری از ایرانیان نبود که با توجه به شرایط، این یک باخت در خانه به حساب میآید. البته با توجه به این که شرکتکنندگان خارجی از میان برترین برنامهنویسان جهان انتخاب شدهبودند، واقعاً این پدیده قابل پیشبینی بود؛ ولی باز هم باید تلاش کنیم و امیدوار باشیم که در مسابقههای بعدی، بدون درنظرگرفتن سهمیه برای ایرانیان، سه نفر از آنها رتبههای برتر را تصاحب کنند.
منبع: در نوشتن این مطلب، علاوه بر مشاهدات شخصی، از تصاویر و مطالب وبلاگ رسمی شرکت بیان و وبلاگ و سایت کانتست بیان نیز استفاده کردم. علاوه بر آن، از برخی مطالب موچود در سایت Codeforces، به ویژه بلاگ ایوان رومانوف، نیز استفاده کردم. برای عکسها، علاوه بر این منابع، از سایت نردبان نیز استفادهشدهاست.
شما از چنین کانتستی چه انتظاری دارید؟ آیا مسابقهی امسال به نظر شما رضایتبخش بود؟
پینوشت: فردا گالری عکس هم افزوده خواهد شد. افزوده شد. البته به دلیل کمتجربگی نویسنده، عکس اختصاصی مناسبی در دسترس نیست و عکسها از منابع دیگر جمعآوری شدهاند.