تالار گفتمان مانشت
مسابقه برنامه نویسی - نسخه‌ی قابل چاپ

صفحه‌ها: ۱ ۲
مسابقه برنامه نویسی - a.hooshmand - 26 فروردین ۱۳۹۱ ۰۱:۱۹ ب.ظ

دوستان شرکت کننده توجه داشته باشند هر بار که درخواست حل یک مسئله را می نمایید مقادیر ورودی عوض می شود و شما بایید بر اساس این مقادیر خروجی را ارسال کنید
(کلی سر کار بودم بخاطر توجه نکردن به این موضوع)Big Grin

مسابقه برنامه نویسی - a.hooshmand - 26 فروردین ۱۳۹۱ ۰۷:۱۵ ب.ظ

دوستان چه کسانی حداقل امتیاز Qualification Round را (۲۰ امتیاز از ۱۰۰ امتیاز) کسب کردند؟

(در ضمن حدود ۷ ساعت دیگه وقت هست تا پایان وقت هم می توانید ثبت نام کنید)

RE: مسابقه برنامه نویسی - ashkan_d13 - 26 فروردین ۱۳۹۱ ۰۹:۲۷ ب.ظ

سلام
منم شرکت کردم

ضمناً هرگونه صحبت راجع به سوال‌ها در زمان برگزاری مسابقه خلاف قوانینه! Big Grin

RE: مسابقه برنامه نویسی - sina_bhh - 26 فروردین ۱۳۹۱ ۱۱:۵۱ ب.ظ

(۲۶ فروردین ۱۳۹۱ ۰۷:۱۵ ب.ظ)a.hooshmand نوشته شده توسط:  دوستان چه کسانی حداقل امتیاز Qualification Round را (۲۰ امتیاز از ۱۰۰ امتیاز) کسب کردند؟

(در ضمن حدود ۷ ساعت دیگه وقت هست تا پایان وقت هم می توانید ثبت نام کنید)

من ۶۰ امتیاز گرفتم Big Grin

مسابقه برنامه نویسی - a.hooshmand - 08 اردیبهشت ۱۳۹۱ ۰۸:۰۶ ب.ظ

نقل قول: Online Round 1: Sub-Round A: شروع شنبه ۹ اردیبهشت ۰۵:۳۰ به مدت دو ساعت و نیم


مسابقه برنامه نویسی - ehsan2mk - 09 اردیبهشت ۱۳۹۱ ۱۲:۰۴ ب.ظ

سلام
من اصلا نمی فهمم صورت سوال یک چه می گویید؟ شایید برای اینکه زبانم ضعیف هست.

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

با تشکر


مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


Problem

I have a really long password, and sometimes I make a mistake when I type it. Right now I've typed part of my password, but I might have made some mistakes. In particular, I might have pressed the wrong key while typing one or more of the previous characters. Given how likely I was to get each character right, what should I do?

I have three options:

Finish typing the password, then press "enter". I know I'll type the rest of the characters perfectly. If it turns out that one of the earlier characters was wrong, I'll have to retype the whole thing and hit "enter" again -- but I know I'll get it right the second time.
Hit "backspace" some number of times, deleting the last character(s) I typed, and then complete the password and press "enter" as in option 1. If one of the characters I didn't delete was wrong, I'll have to retype the whole thing and press "enter", knowing I'll get it right the second time.
Give up by pressing "enter", retyping the password from the start, and pressing "enter" again. I know I'll get it right this time.

I want to minimize the expected number of keystrokes needed. Each character in the password costs 1 keystroke; each "backspace" costs 1 keystroke; pressing "enter" to complete an attempt or to give up costs 1 keystroke.

Note: The "expected" number of keystrokes is the average number of keystrokes that would be needed if the same situation occurred a very large number of times. See the example below.
Example

Suppose my password is "guest" and I have already typed the first two characters, but I had a 40% chance of making a mistake when typing each of them. Then there are four cases:

I typed "gu" without error. This occurs with probability 0.6 * 0.6 = 0.36.
I typed the 'g' correctly but I made a mistake typing the 'u'. Then I have two letters typed still, but the second one is wrong: "gX". (Here, the 'X' character represents a mistyped letter.) This occurs with probability 0.6 * 0.4 = 0.24.
I typed the 'u' correctly but I made a mistake typing the 'g': "Xu". This occurs with probability 0.4 * 0.6 = 0.24.
I made a mistake typing both letters, so I have two incorrect letters: "XX". This occurs with probability 0.4 * 0.4 = 0.16.

I don't know how many mistakes I actually made, but for any strategy, I can calculate the expected number of keys required to use it. This is shown in the table below:

"gu" "gX" "Xu" "XX" Expected
Probability ۰/۳۶ ۰/۲۴ ۰/۲۴ ۰/۱۶ -
Keystrokes if I keep typing ۴ ۱۰ ۱۰ ۱۰ ۷/۸۴
Keystrokes if I press backspace once ۶ ۶ ۱۲ ۱۲ ۸/۴
Keystrokes if I press backspace twice ۸ ۸ ۸ ۸ ۸
Keystrokes if I press enter right away ۷ ۷ ۷ ۷ ۷

If I keep typing, then there is an 0.36 probability that I will need 4 keystrokes, and an 0.64 probability that I will need 10 keystrokes. If I repeated the trial many times, then I would use 4 keystrokes 36% of the time, and 10 keystrokes the remaining 64% of the time, so the average number of keystrokes needed would be 0.36 * 4 + 0.64 * 10 = 7.84. In this case however, it is better to just press enter right away, which requires 7 keystrokes.

Input

The first line of the input gives the number of test cases, T. T test cases follow. Each test case begins with a line containing two integers, A and B. A is the number of characters that I have already typed, and B is the total number of characters in my password.

This is followed by a line containing A real numbers: p1, p2, ..., pA. pi represents the probability that I correctly typed the ith letter in my password. These real numbers will consist of decimal digits and at most one decimal point. The decimal point will never be the first or the last character in a number.
Output

For each test case, output one line containing "Case #x: y", where x is the case number (starting from 1) and y is the expected number of additional keystrokes I need, not counting the letters I have typed so far, and assuming I choose the optimal strategy. y must be correct to within an absolute or relative error of 10-6.


RE: مسابقه برنامه نویسی - ashkan_d13 - 10 اردیبهشت ۱۳۹۱ ۰۵:۵۱ ب.ظ

(۰۹ اردیبهشت ۱۳۹۱ ۱۲:۰۴ ب.ظ)ehsan2mk نوشته شده توسط:  سلام
من اصلا نمی فهمم صورت سوال یک چه می گویید؟ شایید برای اینکه زبانم ضعیف هست.

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

با تشکر


مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

سلام

البته سوال نسبتاً مشکلیه؛
به طور خلاصه میگه که یه مقدار از پسورد تایپ شده و هر کدوم از حروف تایپ شده با یه احتمالی که داده میشه ممکنه درست یا غلط تایپ شده باشند، حالا میشه سه تا کار انجام داد: ۱- اینتر بزنیم، پسورد پاک میشه (چون کامل نبوده و اشتباهه) و دوباره اونو تایپ کنیم ، ۲- چندتا بک‌اسپیس بزنیم و حروف پاک شده و باقی حروف رو دوباره وارد کنیم ، ۳- بقیه‌ی پسورد رو تایپ کنیم

که در مورد ۲ و ۳ ممکنه اشتباه صورت گرفته باشه و مجبورشیم یه بار دیگه پسورد رو تایپ کنیم
سوال اینه که به طور متوسط کمترین تعداد کلیدهایی که باید زده بشن با کدوم از این روش‌ها بدست میاد (۲ خودش چند حالته)

RE: مسابقه برنامه نویسی - ashkan_d13 - 21 اردیبهشت ۱۳۹۱ ۰۳:۵۲ ب.ظ

کسی نیومد Round 2؟


مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


مسابقه برنامه نویسی - Aurora - 11 فروردین ۱۳۹۲ ۱۰:۰۴ ق.ظ

Google Code Jam 2013

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


مسابقه برنامه نویسی - Potential - 11 فروردین ۱۳۹۲ ۰۳:۲۸ ب.ظ

سلام

به نظر من تو مسابقات برنامه نویسی که در TopCoder برگزار میشه شرکت کنید.
در قالب Algorithm contests, Design contests, development contests,... هست. تنوع مسابقات زیاده . و فقط محدود به کد نویسی نیست.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


در مورد هر کدوم از مسابقات در قسمت چپ لینکی که دادم اطلاعات هست. مثلا در مورد conceptualization توضیح داده:

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


یا specification:

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.


من پروفایل بعضی از شرکت کننده ها رو میدیدم از طریق این مسابقات بالای ۱۵۰هزار دلار درآمد داشتن (البته مثلا در طول ۵ سال)

بعضی از مسابقات هم هستند که پاداش (پولی) ندارن ولی برای افزایش اعتبار میتونید شرکت کنید. مثلا خود google معمولا برای استخدام افراد به پیشینه افراد در topcoder توجه میکنه، اگه ببینه که rating ، rank,... فرد در TopCoderبالا باشه اون فرد رو استخدام میکنه. به همین دلیل اینجا نه تنها برای پول در آوردن خوبه بلکه برای آینده شغلی تون تو شرکت های بزرگی مثل google عالیه.

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