PDA

View Full Version : سوال: مسابقات برنامه نویسی



h.galeh
سه شنبه 05 مرداد 1389, 06:05 صبح
سلام دوستان
می خوام داخل مسابقات برنامه نویسی شرکت کنم و باید خودم رو آماده کنم . شما چه منابع مطالعاتی رو پیشنهاد می دید؟
در سطح ACM,TopCoder,..

yaseriran
سه شنبه 05 مرداد 1389, 10:59 صبح
درود!

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

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

پیروز باشید...

آزادی، آیا با زنجیر می آیی؟!...

Salar Ashgi
سه شنبه 05 مرداد 1389, 13:08 عصر
برای چندتا نمونه سوال میتونید به بخش منابع و مراجع و مقالات مفید تالار (http://barnamenevis.org/forum/showthread.php?t=233161) رجوع کنید .

چند تا لینک مناسب :

http://barnamenevis.org/forum/showpost.php?p=1042667&postcount=14

============

http://barnamenevis.org/forum/showpost.php?p=1042676&postcount=16

موفق و پیروز باشید ./

khafan_bat
سه شنبه 05 مرداد 1389, 14:01 عصر
خوب یکی از بهترین منابع خود مسابقات ACM هستش. سوالات سال های قبل رو بخون و سعی کن حلش کنی . من خودم هم همین کار رو می کنم . اما یه سری از سوالات واقعا سخت هستند !! چون مهم زبان برنامه نویسی نیست بلکه مهم طراحی الگوریتم و منطق برنامه هست . موفق باشی :



2008 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2008/Finals/2008WorldFinalProblemSet.pdf)

2007 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2007/Finals/2007WorldFinalProblemSet.pdf)

2006 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2006/Finals/2006WorldFinalProblemSet.pdf)

2005 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2005/Finals/Problems.pdf)

2004 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2004/Finals/2004FinalsProblemSet.pdf)

2003 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2003/Finals/2003WorldFinalsProblems.pdf)

2002 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2002/Finals/problems.pdf)
2001 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2001/Finals/2001WorldFinalsProblems.pdf)
2000 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc2000/Finals/2000WorldFinalsProblems.pdf)
1999 ACM-ICPC World Finals Problems (http://acm.baylor.edu/past/icpc99/Finals/1999WorldFinalsProblems.pdf)


[/URL]Visit the Official ICPC Problem Archive (http://acm.baylor.edu/past/icpc99/Finals/1999WorldFinalsProblems.pdf)


http://www.sppcontest.org (http://acm.baylor.edu/past/icpc99/Finals/1999WorldFinalsProblems.pdf)


http://www.acmgnyr.org/ (http://acm.baylor.edu/past/icpc99/Finals/1999WorldFinalsProblems.pdf)


[URL="http://www.acm.inf.ethz.ch/ProblemSetArchive.html"]http://www.ntnu.edu.tw/acm/ProblemSetArchive.html
(http://acm.baylor.edu/past/icpc99/Finals/1999WorldFinalsProblems.pdf)



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

Salar Ashgi
چهارشنبه 06 مرداد 1389, 13:09 عصر
به نظر من یک بخش مسابقه باید تو این فروم راه بیوفته و به حل این سوالات همراه با تجزیه تحلیل و آنالیز پرداخته بشه . اگه با سی پلاس پلاس هم باشه عالی میشه . حداقل اینه که یک تبادل تجربه این وسط صورت می گیره . امیدوارم این لینک ها مفید واقع بشن .


قبلا راجب این مورد در این تالار و تالار الگوریتم بحث شده است ، ایجاد تاپیک بصورت مسابقه وار امکان

پذیر نیست (بنابه دلایلی ...) ولی اگه نمونه سوال ، جواب سوالات یا سایت های آموزشی مناسب

در این زمینه سراغ داشتید ، میتوانید در بخش منابع ، مراجع و مقالات مفید تالار (http://barnamenevis.org/forum/showthread.php?t=233161) ‏مطرح کنید ./

khafan_bat
پنج شنبه 07 مرداد 1389, 00:46 صبح
منظور شما رو از مسابقه وار بودن متوجه نشدم اما منظورم این بود که فرضا در یک تاپیک جدا به عنوان مثال سوال چهارم مسابقات برنامه نویسی سال 2000 مطرح بشه و پاسخ اون سوال همراه با توضیحات رو بچه های علاقه مند با زبان های برنامه نویسی مختلف ( زبان های استاندارد و مورد قبول مسابقات ) قرار بدند . من خودم کلی سوال دارم اما کسی نیست بپرسم . به هر حال ممنون.

من خودم علاقه مندی و آمادگی خودم رو اعلام می کنم سالار جان .

Salar Ashgi
پنج شنبه 07 مرداد 1389, 11:43 صبح
منظور شما رو از مسابقه وار بودن متوجه نشدم


منظورم اینه که آخه شما گفتید مسابقه ای ایجاد بشه ؛ چون وقتی مفهوم مسابقه میاد وسط اینطور

برداشت میشه که بالاخره فردی که قراره برنده مسابقه بشه ، چی بهش جایزه داده میشه و سوالهایی

از این قبیل ... ولی گفتم اگه قراره نمونه سوال یا جواب هاشون رو قرار بدیم ، میتونید تو تالار

منابع ، مراجع و مقالات مفید تالار (http://barnamenevis.org/forum/showthread.php?t=233161) ‏ قرار بدید ./



با زبان های برنامه نویسی مختلف


این امر ممکن نیست ، درسته که زبان های مسابقات هر سال تقریبا زبانهای ثابتی است (++C یا Java)

ولی تو هر تالاری که قراره جواب سوالا قرار داده بشه ، الزاما کدها باید به زبان تالار مربوطه باشد ./

طلیعه-988
پنج شنبه 21 مرداد 1389, 02:10 صبح
کتاب Programming challenge سوالات زیادی واسه ای سی ام داره.
سایت UVa هم آنلاینه.میتونی همونجا سوالارو حل کنی و بفرستی و منتظر جواب بمونی.

alvandyhamed
چهارشنبه 04 اردیبهشت 1392, 23:28 عصر
سلام
ما میخوایم یه سری مسابقات برگزار کنیم ،سرور رو از کجا تهیه کنیم؟

S_VB.max
پنج شنبه 05 اردیبهشت 1392, 07:41 صبح
برای شرکت در مسابقات برنامه نویسی ACM حتما باید دانشجو بود؟

hadi0x7c7
جمعه 06 اردیبهشت 1392, 05:47 صبح
برای موفق بودن در برنامه نویسی رقابتی شما باید یک سری پیشنیاز ها رو رعایت کنی(برای موفق بودن)
1 - دونستن یک زبان برنامه نویسی
2 - اشنایی با الگوریتم
3 - داشتن صبر ایوب
3 - مشتاق برای یاد گیری بودن
4 - ثبت نام در سایت های برگزار کننده مسابقات( codeforces.com و topcoder.com بهترینند)
5 - شرگت در contest و سعی در بهتر کردن رنک خود
6 - not satisfied ? برو به 2

منابع زیادی داریم از جمله Programming Challenges از Steven Skiena(مسائل این کتاب تقریبا سخت میباشند پس اگه نتونستی حلشون کنی ناراحت نباش) و همچنین Competetive Programming از Steven Halim ( که حدود 1300 تا مسئله از UVA رو واست لیست گرده و دسته بندی)

در کل مسائل به چند دسته تقسیم میشن
1 - Ad Hoc
مسائلی که هیچ الگوریتم معروفی واسشون نیست و باید به خلاقیت خودتون و تسلطون بر برنامه نویسی حلشون کنید که ممکنه اسون ترین سوال contest باشن یا سخت ترین که هیچ کی حجلشون نمیکنه !

2 - Brute force
دوباره این مسائل سخت هستن و دوباره واسشون الگوریتمی نیست و اولین چیزی که به ذهنتون میرسه رو کد بزنید به جواب میرسید مثل این http://codeforces.com/problemset/problem/271/A و یا http://codeforces.com/problemset/problem/289/B البته اینا که مثال زدم اسون هستن ولی سوال سخت هم زیاد داره.

3 - Dynamic Programming
مسائل DP که معمولا تو هر contest چند تاشون رو میبینید. نیاز به توضیح نداره یه نگاه بنداز به اینجا http://community.topcoder.com/tc?module=Static&d1=tutorials&d2=dynProg و همچنین فصل مربوطه در CLRS

4 - گراف
2 تا سرچ معروف داره dfs و bfs که سوال های زیادی رو میشه با اینا حل کرد از جمله 8 - queen و knight tour که مثال های کلاسیک هستند و همچنین flood fill که باز همون dfs هستش.

الگوریتم های کوتاه ترین مسیر dijkstra و bellman - ford و همچنین floyd warshal هم نیازه که بدونید هر چند به صورت مستقیم از اینا سوال نمیاد.

max flow که جزئ مباحث advanced هست واسه bipartite matching و ... (که خودم هم هنوز بلد نیستم)

5 - مسائل ریاضی
از نظریه اعداد گرفته تا بازی ها (nim game و ...) و همچنین ترکیبیات

6 - مسائل هندسی (خیلی سخت و tricky)
از مسائل ساده مثل پیدا کردن دایره محیطی تا چیزای سخت مثل convex hull
(فعلا بیخیال اینا شو)

7 - الگوریتم های پیشرفته string ها مثل knuth-morris-pratt و همچنین suffix array و hashing و regular expressions

8 - data structure های پیشرفته مثل fenwick tree و همچنین segment tree و union find.

کتاب مسائل الگوریتمی به فارسی هست درست نخوندمش ولی بد نیست ( قدیمی و فاقد test case های مناسب میباشد و برای self study زیاد سازنده نیست)

کتاب (Intoduction to algorithms (CLRSهمه ی این مباحث رو کاور کرده و برای شروع خوبه.
کتاب Algorithms 4ed از robert sedgwick هم عالیه همه چیزو به جاوا پیاده سازی کرده در ضمن ویدیوهای اموزشی از خود نویسنده هم توی coursera.org هست

اموزش های خود topcoder.com هم عالی و کافی هست

جدیدا stanford یه course راه انداخته که توی اون مطالب خوبی داره سرچ کنید Stanford CS97SI

مسعود اقدسی فام
یک شنبه 08 اردیبهشت 1392, 23:36 عصر
سلام
ما میخوایم یه سری مسابقات برگزار کنیم ،سرور رو از کجا تهیه کنیم؟

یه نمونه از نرم‌افزارهای داوری آنلاین: http://acm-server.ru/load (http://acm-server.ru/load/)




برای شرکت در مسابقات برنامه نویسی ACM حتما باید دانشجو بود؟


بله باید دانشجو باشید. این مسابقات دانشگاهی و دانشجویی هستن.


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


http://www.algorithmha.ir/tag-%D9%85%D8%B3%D8%A7%D8%A8%D9%82%D8%A7%D8%AA-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C.aspx

majid.fe
جمعه 18 بهمن 1392, 23:05 عصر
به وبلاگ زیر هم یه سری بزنین. به دو زبان c# و c++ هست.
شاید زیاد سطحش بالا نباشه ولی شاید به دردتون بخوره
http://decoding.blogfa.com/

abc2014
چهارشنبه 06 فروردین 1393, 22:35 عصر
سلام
لطفا یکی از دوستان اگه منبعی که نمونه سوالاتACMبا پاسخ را داشته باشه بهم معرفی کنند خیلی ممنون میشم.
یه سوال هم داشتم اینکه همراه داشتن کد بلامانع است؟
زمان این مسابقه درسال 93 درایران کی هست؟
با تشکر

lordwindows7
شنبه 06 دی 1393, 13:31 عصر
سلام به همگی

بچه ها کسی جواب سوالات مسابقات acm 2010 رو نداره ؟؟؟

من تو مساله H

problem H :Rain موندم

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