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

ورود ثبت‌نام راهنما درباره‌ی کاهو
پرسش‌ها برچسب‌ها کاربر‌ها سوال بپرسید!

آمار پرسش:

  • پرسیده شده: 2014-07-17 14:51:39 -0500
  • مشاهده شده: 387 بار
  • بروز شده: 2014-07-20 04:55:39 -0500

پرسش‌های مشابه:

شبکه ی مربعی با یک دزد و حداقل تعداد پلیس

پوش محدب - کدینگ -سوال سخت -الگوریتمی (Convex Hull)

جدول ۸*۸ !

الگوریتم تا چه حدی برای المپیاد نیازه

تعدادی کارت در $n+1$ مکان داریم. می خواهیم در نهایت در هر مکان حداقل $n+1$ کارت داشته باشیم.

پیدا نکردن چند عدد متوالی که حاصل ضرب آنها مربع کامل شود

نکاتی در مورد نوشتن پاسخ:

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

استفاده از ویرایشگر:

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

علائم ریاضی:

برای نوشتن علائم ریاضی می‌تونی از Mathjax استفاده کنی. راهنمای Mathjax رو از سایت math.stackexchange بخون.
برای نوشتن عبارت ریاضی وسط جمله، اون عبارت رو بین دوتا $ قرار بده.
برای نوشتن عبارت ریاضی تو یه خط جدید اون رو بین دوتا $$ قرار بده.

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

5

خب خوشحالم که انقدر با روحیه دوستان امتیاز میدن و واقعا آدم تشویق میشه هم سوال بزاره هم پاسخ بده و امتیاز بده کلا یه جو خوبی برقراره ، :)

حالا بریم سراغ یه سوال زیبا

سه زندانی بعد از صحبت کردن هر کدام در یک انفرادی زندانی می شوند .

زندانبان هر روز هر کدام را که بخواهد به اتاقی می آورد که یک کلید لامپ در آنجا قرار دارد . (هر روز هر چند دفعه ای که بخواهد این کار را می کند. )

زندانی که به اتاق می آید از وضیعت کلید آگاهی پیدا می کند و می تواند آنرا تغییر دهد ( کلید 2 وضیعتی است (بالا و پایین)) .

زندان بان قول می دهد که هر کدام را بی نهایت بار بیاورد .

شرط آزادی : اگر یکی از سه نفر ادعا کنند که قبل از او دو نفر دیگر به اتاق آمدند و درست باشد هر سه آزاد می شوند و اگر هم دروغ ادعا کرده باشد هر سه کشته می شوند .

ثابت کنید آن سه نفر می توانند قبل از اینکه زندانی شوند طوری برنامه ریزی کنند که شرط آزادی را برقرار کنند و آزاد شوند .

چند نکته :

زندان بان به کلید دست نمی زند !!

آن سه نفر از وضیعت اولیه ی کلید آگاهی ندارند !!

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

کسی نمی داند زندان بان او را کی می خواهد به اتاق ببرد و هیچ دخالتی هم ندارند .

لطفا بازهم اگر شبهه ای دارید بپرسید و نظر بزارید!! :)

الگوریتمی مخصوص-کامپیوتری
2014-07-17 14:51:39 -0500
طوفان 1480 ● 11 ● 21 ● 43
پاک‌کردن   ویرایش سوال
نظرات

یه جوری گفتی کلید آزادی آدمو یاد کلید قفل میندازه ... ! نگو کلید لامپ هم نیست

2014-07-17 23:06:43 -0500 سماق دو

:)) نه کلید لامپه ولی بدون لامپ :)

2014-07-18 03:10:38 -0500 طوفان

زندانی باید ادعا کنه که توی همون روز دو نفر قبلش اومدن ؟؟

2014-07-18 03:27:12 -0500 کنکوری

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

2014-07-18 03:28:40 -0500 طوفان

طوفان‌جان عنوان سوال رو یه چی بذار که با خوندنش آدم یادش بیاد سوال چی بوده. مثلا همچین چیزی «۳ زندانی که باید با یک کلید یک نفرشان بفهمد دونفر دیگر قبلا وارد اتاق شده‌اند»

2014-07-18 09:42:46 -0500 کاهو

2 پاسخ

3

بچه ها من دستور العملش رو می نویسم بعد اگه کسی باور نداشت نظر بزاره

((اگه دوستداری رو سوالش هنوز فک کنی نخون سوالش حیف میشه :)))

نفر A:همیشه جهت کلید رو بالا کنه

نفر B , C : هر کدام تنها 2 بار به کلید دست بزنند و اون دو بار موقعی باشه که کلید رو به بالائه و رو پایینش کنن .

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

حال مستقل از وضیعت اولیه، نفر A می تواند ادعای درستی کند و آزادیشان را تامین کند . به همین راحتی :)

حال بریم سراغ اثبات :(حتما متن بالا رو خوب خونده باشد )

بدیهی است که اگر B یا C بیاید و کلید رو به پایین باشد انگار اصلا نیامده (چون کلید را که تغییر نمی دهد و از تعداد پایین زدن هایش هم چیزی کم نمی کند چون ذکر کردیم اگر بالا بوود پایین بزند)

به خاطر بدیهی بالا پس فرقی نمی کند که B و C پشت سر هم بیاند چون نفر اولشون کلید را پایین می کند و بعد از این لحظه برای B و C فرقی نمی کند.

حال فرض کنید که A دفعه ی اولش می باشد و آمد به اتاق اگر لامپ پایین بوود لامپ را بالا میزند ولی چیزی نمیشمرد چون دفعه ی اولش می باشد.

حال اگر A بیاید و لامپ بالا باشد یعنی B و C نیامدند . پس اولین جایی رو می گیریم که لامپ را پایین می بیند پس B یا C آمده اند . و A لامپ را بالا میزند بعد یکی از سه دفعه ای که باید پایین ببیند را می شمرد .

حال از مجموع B , C یکی کم شده و از سه دفعه ی A هم یکی کم شد.

این روند ادامه دارد تا اینکه 2 دفعه ی (مثلا) B تمام شود حال اگر B بیاید و کلید رو به بالا باشد تغییری نمی دهد چون آن دو دفعه اش تمام شده و انگار اصلا نیامده و می توانیم فرض کنیم که B دیگر وجود ندارد چون تغیری ایجاد نمی کند حال از سه دفعه ای که A باید ببیند حداکثر 2 تا کم شده پس A هنوز اعلام نکرده است و تا یک دفعه دیگر که منتظر می ماند تا C بیاید و وارد اتاق شود و وقتی دید کلید پایین است اعلام می کند.

حال 3 دفعه برای دیدن A در نظر گرفتیم چون B یا C به تنهایی 2 تا از مال A کم می کنند

برای B و C هم 2 تا در نظر گرفتیم تا حالت اولیه را خنثی کنیم .

عجب سوالی بودا !!! :|

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

با تشکر از جناب سماق دو

2014-07-19 07:35:20 -0500
طوفان 1480 ● 11 ● 21 ● 43
پاک‌کردن   ویرایش پاسخ
نظرات

خوب مشکل جواب بالا رو داره فک کنم...اگه با این ترتیب BACBACBAC... فرستاده بشن هیچ وقت چنین اتفاقی نمی افته!!!!

2014-07-19 07:59:02 -0500 کنکوری

خب اصلن چرا این باید درست باشه ؟ مگه نمیشه 4 روز متوالی c رو فرستاد ؟ خب قبلش هم هیچکی نیومده باشه و کلید هم از اول رو به پایین باشه ... اونوقت اگه C اعلام وضعیت کنه اعدام میشن

2014-07-19 08:30:34 -0500 سماق دو

خودت نوشتی c تنها دو بار به کلید دست میزنه و اون هم وقتیه که کلید رو به بالا باشه ( بعد الان داری میگی c همیشه رو به بالا میزنه ! پیشنهاد میکنم متنی رو که نوشتی یه بار دیگه بخون ! )

2014-07-19 10:17:26 -0500 سماق دو

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

2014-07-19 10:46:09 -0500 سماق دو

نه شما ببینید ! شما باید متنی را که نوشته اید اصلاح کنید ، خط پنجم را بخوانید » حال اگر نفر C سه دفعه ...

باید به جای C بنویسید A ... آنوقت کلن درست میشود همه چیز

2014-07-19 11:02:32 -0500 سماق دو
3

((((این راه حل اشتباه است،نظرات را بخوانید)))))

نفر A همیشه کلید رو از وضعیت 1 به 2 تغییر میده فقط.

نفر B همیشه کلید رو از وضعیت 2 به 1 تغییر میده فقط.

نفر C هم هیچ کاری انجام نمیده.

حالا اگر نفرC چنین وضعیت هایی رو ببینه مطمئن میشه که 2 نفر دیگه قبلش وارد اتاق شدن:

1.......................2......................1

و یا

2.......................1......................2

منظورم اینه که یک بار یه وضعیتی رو ببینه.بعد یه وضعیت دیگه رو ببینه و در آخر وضعیت اول رو دوباره ببینه.حالا در این بین ممکنه یک وضعیت چند بار پشت سر هم دیده بشه که برای ما مهم نیست.

2014-07-18 04:37:08 -0500
کنکوری 1683 ● 13 ● 27 ● 40
پاک‌کردن   ویرایش پاسخ
نظرات

این راه فکر می کنم غلطه . اگر به این ترتیب وارد اتاق شوند : ABCABC.... در نتیجه C هیچوقت تغییری در وضعییت لامپ نمی بیند.

2014-07-18 05:30:21 -0500 حمید کاملی

حق با شماست.

2014-07-18 05:37:15 -0500 کنکوری

نه لازم نیست پاکش کنی. اتفاقا خوبه باشه. فقط اول راه‌حلت بنویس [این راه حل اشتباه است. لطفا نظرات را بخوانید]. تازه به نظر من +۱ هم داره راه‌حلت :)

2014-07-18 09:39:10 -0500 کاهو

چرا باید یه پاسخ اشتباه اینجا باشه کاهو ؟

2014-07-18 14:40:36 -0500 سماق دو

فهمیدن اشتباه یک پاسخ خودش باعث قوی شدن ذهن می شه و کمک می کنه که همیشه بتونین راه حل خودتون رو با دقت بررسی کنید تا غلط نباشه. (به قول معروف خیلی خوبه که آدم بتونه جوب اثبات خودش رو پیدا کنه . )

2014-07-18 16:31:56 -0500 حمید کاملی

پاسخ شما

فقط در صورتی که پاسخی برای این پرسش دارید، آن را اینجا بنویسید و برای بحث کردن از قسمت «ثبت‌ نظر» استفاده کنید. شما می‌توانید قبل از وارد شدن به سایت پاسخ خود را بنویسید. این پاسخ ذخیره می‌شود و زمانی که شما وارد سایت شدید یا ثبت‌نام کردید منتشر می‌شود.

پیش‌نمایش:

کلیه‌ی حقوق این سایت متعلق به کمیته‌ی ملی المپیاد کامپیوتر است.