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

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

آمار پرسش:

  • پرسیده شده: 2014-06-09 07:24:56 -0500
  • مشاهده شده: 460 بار
  • بروز شده: 2014-06-10 07:57:58 -0500

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

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

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

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

علائم ریاضی:

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

حداقل سوال برای فهمیدن شماره تلفن حسین

10

شماره تلفن حسین دوستم 5 رقمی هست قراره من یک سری سوال ازش بپرسم که اونم توی جواب سوال های من فقط میتونه بگه بله یا خیر حالا از شما میخوام دوقسمت زیر رو برام حل کنید(هرکی حل کرد خیلی شاخه)

الف:اگه قرار باشه همه ی جواب های حسین راست باشه من حداقل چندتا باید ازش سوال بپرسم تا بفهمم شماره تلفنش چنده؟لطفا اثبات هم کنید که چرا کمترینه جوابتون

ب:مسئله ی بالارو اینجوری حل کنید که حسین شرط کرده باشه که یکی از جواب هایی که میده غلطه

2014-06-09 07:24:56 -0500
سناتور 523 ● 9 ● 17 ● 22
پاک‌کردن   ویرایش سوال
نظرات

حداقل یا دقیقا!؟

2014-06-09 07:42:03 -0500 پویان

حداقل دیگه کاملا مشخصه سوال

2014-06-09 07:44:14 -0500 سناتور

کسی حل نکرد؟

2014-06-09 07:44:22 -0500 سناتور

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

2014-06-09 07:44:41 -0500 سناتور

من با 20 تا هم تونستم پیدا کنم نه نمیشه

2014-06-09 07:55:52 -0500 سناتور

2 پاسخ

8

من می گم 17 سوال توضیحش واسم سخته چرا این حداقل هست ولی من یه جا خوندم سریع ترین روش برای رسیدن به یک عدد از طرف مقابل همینه : اعداد 1 تا 99999 را در مبنای دو می نویسیم که یک سری اعداد حداکثر 17 رقمی در می آید این ها را بر اساس این که رقم اول یکه یا رقم دوم یکه یا رقم سوم یکه به 17 دسته تقسیم می کنیم بعد با پرسیدن این که در کدام یک از دسته ها حضور دارد به یک عدد در مبنای دو می رسیم که این همان جواب ماست

اما در مورد حالت ب : این حالت واقعن سخته من نظر دارم اما فکر کنم کمتر از اینم راهی باشه با اضافه کردن 7 سوال می شه یه سری چیزایی را فهمید ازش می پرسیم در مبنای دو جمع 9 رقم اولش برابر اون چیزیه که ما به دست اوردیم که باعث می شود اعداد ما دو گروه شود که یا 8 تا از اعداد ما باقی می ماند یا 9 تا ما بد ترین حالت را فرض می کنیم ازش می پرسیم جمع 5 تای اول این 9 تا فلان است که باعث می شود یا 5 تا بماند یا 4 تا به همین ترتیب با پرسش 3 تای اول و دو تای اول و در نهایت می توانیم محل دقیق دروغ را در حداکثر 6 سوال پیدا کنیم بعد یک سوال دیگر که توضیح در زیر می آید

در این جا دو حالت وجود دارد یا دروغ در بخش اول مساله است یا بخش دوم اگر در بخش اول باشد که باهمان 6 سوال اخر می شود فهمید راجه به کدوم عدد دروغ گفته وگرنه ما از او یک سوال دیگر می پرسیم که آیا اون عددی که فکر می کنیم دروغ گفته اون هست یا نه اگر دروغ در بخش آخر باشه در خود هفت سوال تناقض به وجود می آید پس برای حالت ب با 17+7 یعنی 24 سوال به جواب رسیدیم

2014-06-10 01:20:43 -0500
دانلد داک 177 ● 1 ● 3 ● 7
پاک‌کردن   ویرایش پاسخ
نظرات

درسته واسه این هم که بگی چرا کمتر از 17 نمیشه باید ثابت کنی که حداقل سوال لازم 15 هست که ولی 15 و 16 هم یک مشکلی داره پس میشه 17

2014-06-10 01:39:06 -0500 سناتور

خوب گفته دروغ بگه، ممکنه اون ۱۷ سوال اول که می‌پرسی رو راست گفته باشه و اون ۷ سوالی که بعدش میپرسی دروغ باشه! :)

2014-06-10 02:14:49 -0500 توفیقی

در زیرش اونم گفتم

2014-06-10 03:15:53 -0500 دانلد داک

آهان. پس حالا فرض کن همین سوال آخرین هه که رو دروغ بگه! :-) چی میکنی؟

2014-06-10 03:30:39 -0500 توفیقی

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

2014-06-10 03:34:19 -0500 دانلد داک
3

الگوریتم حریصانه
» الگوریتم های مساله های بهینه سازی معمولا مراحل مختلفی را طی می کنند ودر هر مرحله مجموعه ای از انتخاب ها پیش رو دارند برای بسیاری مسایل بهینه سازی استفاده از برنامه ریزی پویا برای تعیین بهترین اتخاب کار اضافی است میتوان با الگوریتم های ساده تر و کارا تر هم همان انتخاب را انجام داد. یک الگوریتم حریصانه همیشه گزینه ای را انتخاب می کند که در لحظه به نظر بهترین می اید .یعنی یک انتخاب محلی(نسبی)انجام می دهد به این امید که این انتخاب به یک جواب بهینه مطلق ختم شود »
مقدمه ای بر الگوریتم ها /توماس کورمن /جلد 1/صفحه ی 428
پاسخ الف:
حل از طریق الگوریتم حریصانه
با 10 سوال می توان رقم های به کار رفته را شناسایی کرد که چهار حالت زیر روی میدهد :
   1)5 رقم متفاوت داشته باشیم :
    با 1-!4 حالت می توان جای ارقام را تشخیص داد که در مجموع 33 سوال پرسیده ایم
   2)4رقم متفاوت داشته باشیم:
    یعنی یکی از رقم های ان دو بار تکرار شده با سه حرکت میتوان ان را مشخص کرد وبا12سوال میتوان جای اعداد را مشخص کرد .در مجموع با 25 سوال شماره را فهمیده ایم
   3)3رقم متفاوت داشته باشیم:
    دو حالت زیر رخ میدهد :
     1.3)دو رقم هر کدام دو بار تکرار شده:
      که با دو سوال این دو رقم تعیین شده با 4 سوال جای ارقام را می فهمیم در مجموع با17سوال شماره را فهمیده ایم
    2.3)یک رقم سه بار تکرار شده:
     با دو سوال عدد تکراری مشخص میشود حد اکثر با 8 حرکت جای اعداد مشخص شده در مجموع با 21 سوال شماره را فهمیده ایم
   4)2رقم متفاوت داشته باشیم:
    دو حالت زیر رخ میدهد :
     1.4)یکی دو بار تکرار شده ودیگری سه بار:
      با یک سوال اعداد تکراری مشخص شده وبا حد اکثر 10سوال جای ارقام مشخص میشود در    مجموع22 سوال پرسیده ایم
    2.4)یکی 4بار تکرار شده :
     در اینجا نیز با یک سوال عدد تکراری مشخص میشود با 5 سوال جای ارقام در مجموع 17 سوال
   5)1رقم متفاوت داشته باشیم:
    که با 11 سوال میتوان شماره را تشخیصداد
    پس نتیجه میگیریم که حد اقل با 33 سوال شماره را تشخیص داده ایم
لازم به ذکر است برای خلاصه شدن حل چگونگی محاسبه اورده نشده لطفا خودتان با الگوریتم حریصانه حساب کنید(اعداد اورده شده صحیح است) برای تعیین اینکه کدام یک از زیر حالت هارخ داده 1 سوال لازم است

2014-06-09 10:33:00 -0500
س 131 ● 2 ● 10
پاک‌کردن   ویرایش پاسخ
نظرات

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

2014-06-09 10:41:06 -0500 ابر لرد

برای تکرار ارقام حالت کلی است و الگوریتم ایده ی اصلی بود

2014-06-09 10:49:20 -0500 س

اما این حالت کلی را به حالات جزیی تبدیل کردن تعداد زیادی پرسش میخواهد!

2014-06-09 10:53:35 -0500 ابر لرد

@س برای اینکه بره خط بعد وقتی اینتر میزنی جواب نمیده باید کد <br> رو بزاری تا بره خط بعد. (چون خیلی متنت درهم شده بود!)

2014-06-10 02:19:45 -0500 توفیقی

پاسخ شما

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

پیش‌نمایش:

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