مسابقه ACM ICPC چیست؟

ای سی ام (ACM) چیست؟

ای سی ام   (Association for Computing Machinery)  یک مسابقه برنامه نویسی است که هر ساله در دنیا برگزار می شود . در این مسابقات تیم ها در قالب هایی ۳ نفره شرکت می کنند و به هر تیم یک دستگاه رایانه جهت برنامه نویسی داده ی شود .

نحوه ی سنجش تیم ها به این گونه است که در مسابقات حدودا ۸ سوال محاسباتی و الگوریتمی می دهند هر تیمی سوال های بیشتری در مدت زمان کم تری  با خطای کم تری حل کند رتبه ی بهتری کسب می کند .

چگونه در این مسابقات شرکت کنیم؟

برای رسیدن به مسابقات جهانی ای سی ام شما باید در مسابقات منطقه ای شرکت کنید و در صورت گرفتن نتیجه خوب می توانید به مسابقات جهانی بروید . دانشگاه شریف هر ساله مسابقات ای سی ام  منطقه ای را در ایران برگزار می کند که در آن هرسال بهترین تیم های ایران و منطقه مثل هندوستان و روسیه  و … در آن حضور دارند.

هدف از ای سی ام چیست ؟

سوال اصلی در هر کاری این است که ما چرا باید در آن کار شرکت کنیم؟

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

برخلاف مسابقات المپیاد کامپیوتر که در آن هدف تنها استفاده از مزیت های پیروزی در این مسابقات است و در صورت باخت در آن جز اندکی علم خاص، چیز دیگری برای ما باقی نمی ماند، در مسابقات ACM هدف خود مسابقات است و نه پیروزی در آن! این بدان معنا است که شما در مسابقات ACM  برخلاف المپیاد، باید از خود مسابقات لذت ببرید، از کد زدن لذت ببرید و از فکری که پشت این کدها است؛ نه تنها برای پیروزی در این مسابقات و درج این پیروزی در رزومه ی خود. گرچه ACM  مزیت های قراردادی زیادی دارد، ولی هدف اصلی آن این مزیت فلسفی و ذاتی آن است.

روش برگزاری ACM

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

سؤالات این مسابقات به‌صورت انگلیسی طراحی می‎شوند و عموماً به‌ صورت مشکلی در دنیای واقعی بیان می‎گردند.

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

برنامه شرکت‎ کنندگان باید عیناً به ازای هر ورودی، خروجی موردنظر را چاپ کند در غیر این صورت برنامه آن‌ها رد خواهد شد.

این مسابقات به‌طورمعمول به‌صورت پنج‌ساعته برگزار می‎شود و معیار برتری هر تیم نسبت به سایر تیم‎ها تعداد سؤال حل‌شده آن‌ها در پایان مسابقه است.

در مورد تیم‎ هایی با تعداد سؤال برابر مجموع زمان مورد استفاده برای حل سؤالات معیار قرار می‎گیرد و زمان کمتر دارای رتبه بهتری خواهد بود.

در این مسابقات هر تلاش اشتباه در حل سؤالات با جریمه زمانی داوران همراه خواهد بود و زمانی به‌طورمعمول ۲۰ دقیقه به مجموع زمان آن تیم اضافه خواهد شد.

شما در مسابقه برای هر سؤال یک بادکنک! بارنگی خاص دریافت خواهید کرد و از بادکنک به‌عنوان نماد اصلی این مسابقات می‎توان یادکرد.یکی دیگر از رسم‌های مرسوم در این مسابقات ترکاندن بادکنک در پایان مسابقه می‌توان نام برد.

programming challenge

با شرکت در ای سی ام چه چیز به دست می آوریم؟

با شرکت در مسابقات ای سی ام علاوه بر لذتی که در آماده شدن و کد زدن و فکر کردن است به دو چیز خیلی مهم دیگر هم دست پیدا می کنیم:

۱ – طراحی الگوریتم

۲ – برنامه نویسی سریع

سوال های ACM  سوال های خشک و کلیشه ای برنامه نویسی نیستند بلکه  سوال هایی هستند که جنبه محاسباتی و الگوریتمی دارد پس با تسلط بر این سوال ها الگوریتم و ذهن خود را به شدت تقویت می کنید.

چه طور در این طرح برای ACM مسابقات آماده شویم ؟

تیم های موفق در این مسابقات تیم هایی هستند که معمولا از سال اول آغاز دانشگاه استارت شروع کار را می زنند  پس تیم هاتون رو درست کنید و شروع کنید به کاربرنامه نویسی با رویکرد حل مسئله و…

اگر بخواهید از دوران دانشگاهیتون لذت ببرید باید کار تیمی رو زود شروع کنید .

۱
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی
قدرت گرفته از بلاگ بیان