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

سوال درهم سازی مهندسی کامپیوتر ۹۳ - Hopegod - 02 آبان ۱۳۹۵ ۱۲:۲۳ ب.ظ

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

RE: سوال درهم سازی مهندسی کامپیوتر ۹۳ - Jooybari - 02 آبان ۱۳۹۵ ۰۲:۰۸ ب.ظ

سلام. وفت بخیر.
سوال جالبیه. اون تابع نگاشتی که نوشتید، هر عنصر از اعداد ۱ تا ۱۰۰۰ رو به یکی از کلاس‌های (مجموعه‌های) ۰، ۱، ... ، ۸ و ۹ انتقال میده. (با توجه به باقی مانده توان ۳ اون اعداد به ۱۰) باید ببینید توی هر یک از این مجموعه‌ها دقیقاً چندتا عضو قرار میگیرن. نوشتنش یکم طولانیه ولی از من قبول کنید که تو هر مجموعه دقیقاً ۱۰۰ عضو قرار میگیرن.
برای اثبات این حرف میتونید اعداد ۰ تا ۹ (که یاقی‌مونده های بر ۱۰ هستن) رو به توان ۳ برسونید و میبینید رقم یکان این ۱۰ عدد، همون ۱۰ عدد هستن ولی با یه ترتیب دیگه. مثلاً رقم یکان توان ۳ اعدادی که رقم یکانشون برابر ۳ و ۴ باشه به ترتیب برابر ۷ و ۴ میشه.
حالا قراره دو عدد انتخاب کنیم و ببینیم این دو عدد توی یک کلاس هستن یا نه. فرض میکنیم عدد a تو کلاس i باشه. احتمال اینکه عدد b هم توی همون کلاس یاشه با فرض اینکه b بتونه با a برابر باشه برابر [tex]\frac{100}{1000}=0.1[/tex] و در غیر این صورت برابر [tex]\frac{99}{999}\approx 0.1[/tex] میشه.
این سوال، سوال سختی نیست. ولی برای حل اون باید مفاهیم نگاشت (از ساختمان داده) مفاهیم شمارش و نظریه اعداد (از ساختمان گسسته) و مفهوم احتمال (از آمار و احتمال) رو در حد متوسط بدونید. اگه توی حل این سوال به مشکل خوردید مشکلتون از مفاهیم ساختمان داده نبوده. سوالات کنکور به شکلی میان که شما رو مجبور میکنن تمام دروس رو بخونید.

RE: سوال درهم سازی مهندسی کامپیوتر ۹۳ - Pure Liveliness - 02 آبان ۱۳۹۵ ۰۲:۲۱ ب.ظ

سلام.
برای اینکه دو عنصر به یک خونه بیفتند، باید باقی‌مونده‌ی مکعبشون (توان سه) به ۱۰ برابر باشه.
اولاً برای دونستن باقی‌مونده یک عدد به ۱۰، صرفاً رقم یکان مهم هست و بقیه‌ی رقم‌ها نقشی ندارند. مثلاً باقی‌مانده‌ی ۲۳۴ به ۱۰، میشه باقی‌مونده‌ی ۴ به ۱۰/
ثانیاً، وقتی اعداد رو به توان ۳ می‌رسونیم، تمامی باقی‌مانده‌های ممکن رو می‌سازند:
باقی‌مانده‌ی عددی با رقم یکان ۰، به ۱۰ برابر هست با ۰
باقی‌مانده‌ی عددی با رقم یکان ۱، به ۱۰ برابر هست با ۱
باقی‌مانده‌ی عددی با رقم یکان ۲، به ۱۰ برابر هست با ۸
باقی‌مانده‌ی عددی با رقم یکان ۳، به ۱۰ برابر هست با ۷
باقی‌مانده‌ی عددی با رقم یکان ۴، به ۱۰ برابر هست با ۴
باقی‌مانده‌ی عددی با رقم یکان ۵، به ۱۰ برابر هست با ۵
باقی‌مانده‌ی عددی با رقم یکان ۶، به ۱۰ برابر هست با ۶
باقی‌مانده‌ی عددی با رقم یکان ۷، به ۱۰ برابر هست با ۳
باقی‌مانده‌ی عددی با رقم یکان ۸، به ۱۰ برابر هست با ۲
باقی‌مانده‌ی عددی با رقم یکان ۹، به ۱۰ برابر هست با ۹

همانطور که می‌بینید، در سمت چپ، تمامی یکان‌ها ممکن ساخته شده‌اند. پس برای اینکه دو عدد به یک خونه بیفتند، باید عدد دوم، یکانش با عدد اول برابر باشه که احتمالش میشه [tex]0.1[/tex]

دقت شود که این قاعده برای توان دو صحیح نیست. در توان دو، ارقام ۲، ۳، ۷ و ۸ رخ نمی‌دهند. پس احتمال اینکه به یه خونه بیفتند بستگی به این خواهد داشت که رقم یکان عدد قبلی چی باشه. مثلاً اگه ۰ بوده باشه، الان هم باید ۰ باشه، ولی اگه ۶ بوده باشه، الان هم میتونه ۶ باشه رقم یکانش، و هم ۴/ که میشه اعداد رو به دو گروه تقسیم کرد، اونایی که یونیک هستند، مثل ۰ و ۵، و اونایی که در دو حالت تولید می‌شوند، مثلاً رقم یکانشون ۱ باشه یا ۹ باشه (که در این صورت باقی‌مانده‌ی مجذور جفتشون به ۱۰، برابر هست)

RE: سوال درهم سازی مهندسی کامپیوتر ۹۳ - Hopegod - 03 آبان ۱۳۹۵ ۰۱:۵۱ ق.ظ

از پاسخهای خوبتون و اینکه وقتتون رو در اختیارم گذاشتین ممنونم دوستان. در پناه خدا. Heart