ویرگول
ورودثبت نام
مهیار طبری
مهیار طبرییک آدم معمولی ولی مشتاق :)
مهیار طبری
مهیار طبری
خواندن ۱۱ دقیقه·۹ ساعت پیش

در المپیاد دانشجویی کامپیوتر بر من چه گذشت؟

سلام من مهیار طبری هستم، رتبه ۶ سی‌امین المپیاد دانشجویی کامپیوتر شدم و خواستم یک سری تجربه‌هایی که بدست آوردم و بعضا تا خود مرحله نهایی نمی‌دونستم رو اینجا مکتوب کنم به امید اینکه به کارتون بیاد و رتبه بهتری کسب کنید.

فقط یک نکته‌ای مهم خدمت دوستان عزیزم :) به هیچ عنوان ادعایی مبنی بر صحت تمام و کمال مطالب پایین نیست و ممکنه اشتباه کرده باشم و انتظار می‌ره که خواننده, خود به بررسی صحت و سُقم آن بپردازد :)

ثبت نام و ساختار

دو روش وجود داره متمرکز و غیر متمرکز که در نهایت پذیرفته شده‌های هر کدوم تو مرحله نهایی به هم می‌رسن.

المپیاد غیر متمرکز

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

مرحله اول روالش اینطوریه که تمام دانشگاه‌های کشور به ۱۰ منطقه تقسیم می‌شن و تمام متقاضی‌های هر منطقه به محوریت یک دانشگاه از اون منطقه(که پایین گذاشتم) یک امتحانی رو شرکت می‌کنند که ساختار دقیقا مشابه مرحله نهایی داره(فقط سطح سوالات معمولا متفاوته) و در نهایت از هر منطقه ۵ نفر انتخاب می‌شن و اجازه ورود به مرحله بعدی رو پیدا می‌کنند(البته فکر کنم منطقه ‍۱ حدود ۱۰ نفر سهمیه داره).

منطقه‌های کشوری المپیاد غیرمتمرکز و دانشگاه های مرکز
منطقه‌های کشوری المپیاد غیرمتمرکز و دانشگاه های مرکز

یک سری نکته:

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

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

اطلاعیه اولین مرحله توسط دانشگاه مرکز منطقه ۴ که دانشگاه من شاملش می‌شد
اطلاعیه اولین مرحله توسط دانشگاه مرکز منطقه ۴ که دانشگاه من شاملش می‌شد

در نهایت، نفرات برگزیده متمرکز هم به مرحله نهایی دعوت می‌شن. پس عملا می‌شه گفت مرحله نهایی بین حدود ۵۰ تا ۷۰ نفر برگزار می‌شه.

در مورد دوره‌ای که من شرکت کردم(غیر متمرکز)، ۲۵ خردادماه راه‌یافتگان مرحله نهایی مشخص شدند(سایت سازمان سنجش بخش اعلام نتایح بود که لینکش رو بعد از اعلام نتایج مرحله نهایی حذف کردند) و بعد از بازه ۱۰ تا ۱۶ تیرماه ثبت‌نام مرحله نهایی انجام شد(توسط خود دانشجو انجام می‌شه). در نهایت خود مرحله نهایی در ۳ مردادماه در دانشگاه ملی مهارت دختران در تهران برگزار شد.

المپیاد متمرکز(کنکور)

به جای این مراحل می‌تونید کنکور شرکت کنید و موفع ثبت نام کنکور تیک قسمت «علاقه‌مند به شرکت در المپیاد هستم» رو برنید(البته اگر نزنید هم فکر نکنم مشکلی پیش بیاد ولی شما که هدفتون هست این کار رو کنید). با آوردن رتبه تا ۱۵ اگر فارغ التحصیل نشده باشید ازتون دعوت می‌شه که می‌تونید مرحله نهایی رو شرکت کنید.(جزئیات این رو خودتون هم یک پیگیری کنید، چون این مسیر رو نرفتم ممکنه قسمتی‌اش اشتباه باشه).

برای رسیدن به مرحله نهایی المپیاد بهتره کدوم روش رو شرکت کنیم؟

اول اینکه می‌تونید هم زمان هر دو تا راه رو برید و حتی از هر دو طریق کلید ورود به مرحله نهایی رو بدست بیارید(البته مزیتی در مرحله نهایی براتون ایجاد نمی‌کنه)، ولی به نظرم کسی که کلا هدفش المپیاد هست بهتره تمرکزش رو روی غیر متمرکز بگذاره. به دلایل زیر:

  • درس‌های متمرکز(کنکور) بیشتره و در نهایت فقط از چند تا از اون‌ها در مرحله نهایی سوال میاد.

  • رقابت مرحله اول شاید بشه گفت از کنکور معقول تره. در کنکور کسانی هستند که فارغ التحصیل شدند و طبیعتا تایم بیشتری دارند که رتبه بهتری بدست بیارن(احتمالا).

  • از اونجایی که مرحله نهایی تشریحی هست، بهتره خودتون رو برای مرحله ۱ که اون هم تشریحی هست آماده کنید.

سوالات چه سبکی هستند؟

درجه سختی سوالات خیلی بستگی به این داره که طراح سوال چه کسی یا کسانی هستند. ولی به طور کلی عرف هست که سولات مرحله دو پیچیده‌تر باشه. ولی خیلی هم الزامی بر این نیست و مثال نقض داره مثلا معماری مرحله اول ما به نظرم سطحش بالاتر بود.

برنامه امتحانی مرحله اول(مرحله دوم هم به همین شکل بود)
برنامه امتحانی مرحله اول(مرحله دوم هم به همین شکل بود)

رویکرد کلی برای آمادگی(نظر شخصی من)

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

  • نکته ساده‌ای هست ولی بعضا این اشتباه ساده ولی خیلی مهم تکرار می‌شه: اگر ویدیو می‌بینید، غالبا سرعت x1 ویدیو رو دیدن اشتباهه. اگر با سرعت x1 حواستون پرت می‌شه، شاید این سرعتی که می‌بینید سرعت مناسب شما نیست و باید یک کم(هر چقدر که خودتون حس می‌کنید خوبه) سرعت رو بالا ببرید.

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

حالا بریم امتحاناتی که شرکت کردم رو به ترتیب ساعت امتحانی‌شون یک بررسی کوچولو کنیم:

نظریه زبان – ۰۸:۰۰ تا ۰۹:۰۰

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

حل سوالاتش هم این ریپو گذاشته که خیلی می‌تونه کمک کننده باشه. البته که برای درک بعضی از اون‌ها از LLM هم می‌تونید استفاده کنید ولی حواستون باشه ممکنه خیلی با استدلال قوی بهتون چرت و پرت بگه :) برای لاطائلات ساختار‌یافته و به ظاهر منطقی بافتن حتما پیشنهاد می‌کنم استفاده کنید:). ولی جدای از این حواستون باشه حل بعضی سوالات خود این ریپو ایراد داره. مثلا یک سوالی بود که داشتیم سر کلاس حل می‌کردیم و این هم جوابش رو گذاشته بود ولی بعد بررسی‌های فراون فهمیدیم اصلا از دم سوال غلط بوده :) (دوستانی که این متن رو می‌خونن و اون موقع بودن و یادشونه, سلام سلام!)

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

سیستم عامل – ۱۱:۰۰ تا ۱۲:۳۰

فضای سوالات هم شامل بلد بودن یک سری مفاهیم می‌شه و هم حل مساله داره. درک مفاهیم ممکنه به این سمت هم بره که به شما بگن فلان چیز رو تحلیل کن و بگو که مزایا و معایبش چیه. مسائلش مسائل محاسباتی هم داره. نظر شخصی‌ام اینه که درس روتینی هست و شما اگر خوب بخونید احتمالا مشکلی برنخورید. فقط تنها جایی که یک کم به قولی ممکنه چالشی باشه بحث همروندی و مسائل سمافور هست. این مورد رو معلوم نیست ازش سوال بدن یا نه(بستگی به طراح سال شما داره) ولی خب جزو مباحث هست و می‌شه ازش سوال داد ولی بحثی که هست اینه که اگر طراح بخواد می‌تونه خیلی روش مانور بده و اینو باید در نظر داشته باشید.

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

و دوباره اگر برای شروع با فیلم راحت‌تر هستید سیستم‌‌عامل آقای ابریشمی دانشگاه فردوسی مشهد گزینه خیلی خوبیه.

معماری و مدار منطقی – ۱۴:۰۰ تا ۱۵:۳۰

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

شبکه – ۱۵:۴۵ تا ۱۷:۱۵

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

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

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

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

در مورد مزایا جستجو که کنید اطلاعات خوبی دستتون میاد ولی اینجا می‌خوام یک کم مواردی که شاید با جستجو نتونید پیدا کنید بنویسم:

تا چه رتبه ای کجا می‌شه قبول شد؟

۱۵ نفر اول مرحله نهایی که سهمیه گرفتند لزوما هر دانشگاهی که بخوان نمی‌تونن برن. چیزی که من متوجه شدم موردهای زیر هستند اما شما به نظرم حتما ارتباط با دفتر استعداد درخشان دانشگاهی که دوست دارید و یا خود بخش المپیاد سازمان سنجش, تماس بگیرید و پرس و جو کنید(یک چیزی هم اینجا در گوشی بگم, احتمالا اگر حضوری برید دانشگاه، اطلاعات کامل‌تری دستتون میاد :))

  • شاید عجیب باشه, اما اینطوری نیست که سختی قبولی مثل همون کنکور باشه. مثلا شاید فکر کنید قبولی شریف سخت تر از تهران هست. در صورتی که اینطور نیست. شریف 1 تا 5 رو قبول می‌کنه و تا 15 رو در شرایط خاص ولی تهران فقط 1 تا 3. یا مثلا شاید تعجب کنید(البته دلیلش رو من نمی‌دونم شاید شما بدونید), ولی مثلا دانشگاه تربیت مدرس پذیرش سخت‌گیرانه‌تری نسبت به امیرکبیر و علم وصنعت داره! همنیجا یک پرانتز باز کنم :) شاید الان بگید اون شرایط خاص چی هست, ببینید اون ظاهرا اینطوریه که اگر شما کنکور ارشد داده باشید و 90 درصد نمره, تراز یا نمی‌دونم چی :) آخرین نفری که اون کد رشته رو قبول شده باشه کسب کرده باشید, می‌تونید اون کد رشته رو برید. یک چیزی مثل سهمیه شاگرد اولی می‌شه اگر اشتباه نکنم برای این کار به Olympiad@sanjesh.org ایمیل بزنید که می‌خواید ۹۰ درصد رو براتون اعمال کنن

  • قبولی‌تون بر اساس دانشگاه هستش نه کد رشته! یعنی مثلا اینجوری نیست که بیایم بگیم از اون جایی که مثلا (الان در زمان نوشتن این متن) معماری تهران کد رشته‌اش تو کنکور نسبت به هوش امیرکبیرقبولی‌اش راحت‌تره پس اینجا هم همینظور هست! نه! اینجا فقط دانشگاه ملاک هست(مگر در مورد همون قضیه ۹۰ درصد که بالاتر گفتم).

حرف آخر

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

راستی اینم بگم! یک سری منابعی که در طی دوره کارشناسی با توجه به تجربه خودم و دوستانم به نظرم مفید بودند رو جمع کردم. اگر دوست دارید ببینید نوشته زیر برای شماست. امیدوارم به کارتون بیاد :)

اینم دورنماش :)
اینم دورنماش :)

در نهایت امیدوارم که تو این مسیر کلی چیز یاد بگیرید و کیف کنید:)

خوش و خرم باشید!

المپیاد دانشجوییالمپیادمهندسی کامپیوتر
۱
۲
مهیار طبری
مهیار طبری
یک آدم معمولی ولی مشتاق :)
شاید از این پست‌ها خوشتان بیاید