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

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

آمار پرسش:

  • پرسیده شده: 2015-07-15 07:50:48 -0500
  • مشاهده شده: 537 بار
  • بروز شده: 2015-07-17 09:07:23 -0500

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

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

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

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

علائم ریاضی:

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

سوال شمارش شاید ساده شاید سخت :|

4

سلام

من شمارش اصن بلد نیستم

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

تمامی عوامل اول سازنده یه عدد رو داریم...به چند حالت میشه عدد رو به صورت حاصل ضرب چند عدد نوشت؟(ترتیبشون مهمه)

مثلا برای 12 :

12

3 4

4 3

3 2 2

2 3 2

2 2 3

6 2

2 6

UP: عددی که اول کار داریم(که از ضرب عوامل اول بدست میاد) خیلی بزرگ هست(بیشتر از 10 رقم مثلا)

سعی نکنین On هم بزنین حتی...من دنبال یه راه ترکیبیاتی هستم...شایدم نباشه همچین راهی...

مثلا یه چیزایی تو مایه های اینکه بگیم :میشه دوتا از عوامل 2 رو برداشت و کردشون 4 بعد جواب اینجوری میشه و ازین چیزا...

2015-07-15 07:50:48 -0500
تنیسون 948 ● 3 ● 9 ● 18
پاک‌کردن   ویرایش سوال
نظرات

الان چرا 12 1 با 1 12فرق داره ؟ خب اینجوری 2 6 1 هم باید با 2 1 6 و با 1 2 6 فرق کنه.

2015-07-15 10:34:13 -0500 روبیک

................................................سوال جالبیه . :) +

2015-07-15 10:36:49 -0500 سی پلاس پلاس

@روبیک اوه حواسم نبود 1 12 فرق نداره با 12 1

2015-07-15 10:56:39 -0500 تنیسون

این دی پیه!!

2015-07-15 11:02:29 -0500 کنکوری

دی پی چیه آخه؟ یه جور بگید ما هم بفهمیم.!

2015-07-15 11:06:17 -0500 سی پلاس پلاس

2 پاسخ

3

خوب من یه راه دی پی انه میزارم که راه به نسبت خوبیه:

خوب dp_i برابره با: dp تمام مقسوم علیه های i به جز خودش و

dp_1 برابر ۱ هستش.

خوب بقیشم که معلومه

کد زدنشم که کاری نداره(بدیهیه)

امیدوارم تونسته باشم کمکی کرده باشم!!

آپدیت:اینی که من گفتم شبیه بک ترک شده!!خودتون حواستون باشه dp بزنید...خخخخخخخخ

آپدیت بعدی:

برای حلش ابتدا بیاید تمام مقسوم علیه های n رو به صورت سورت شده تو یه جایی ذخیره کنیم.بعد از پایین شروع می کنیم میایم تا بالابه هرمقسوم علیه(i) که رسیدیم میایم تو ی بقیه ی مقسوم علیه ها میگردیم واونایی که مضرب i هستند رو آپدیت میکنیم مقدارشونو.

**اینو گفتم که بعدا نگید درست راه حلتو بگو!!

یه آپدیت واسه توضیح بیشتر:

خوب راهم رو با همون مثال توی سوال توضیح میدم:

نوشتن به اون روشی که سوال گفته ما میایم اولین عددی که باید بنویسیم رو مشخص میکنیم که میشه همه ی مقسوم علیه های اون عدد به جز یک.مثلا برای 12 میشه :2و3و4و6و12.در صورت انتخاب هر کدوم از اینا مقدار باقی مانده برای نوشتن میشه 12 تقسیم بر اون عدد یعنی:6و4و3و2و1.

این یعنی اینکه اگه ما عدد اول رو 2 انتخاب کردیم ، باید یه بار مسِله رو برای 6 حل کنیم (برای حل مسِله واسه عدد 6 هم دوباره از روش بالا استفاده می کنیم.)و این کار را تا موقعی انجام میدیم که به عدد اول برسیم که مقسوم علیه هاش 2 هست که اگه خودشو حساب نکنیم فقط یه مقسوم علیه داره که اونم 1 هست (که میدونیم تداد راه های نوشتن عدد 1 ، 1 هست)

پس برای 12 ما باید بیایم مسِله رو برای اعداد 1و2و3و4و6 حل کنیم.

برای 6 باید بیایم برای 1و2و3 حل کنیم.برای 4 باید 1و2 رو حل کنیم.(بقیه هم که اول هستند)

الان جواب برای عدد 12 میشه تعداد اعداد اول و 1 که توی راه حل بالا بهشون رسیدیم.(یه نگاه بندازید میفهمید 8 تاست)

یه نکته*:برای حل این سوال اینکه عدد اولمون چی باشه هیچ فرقی نمیکنه پس میتونیم اعداد اول بزرگ رو با اعداد اول کوچیکتر حل کرد.

یه نکته دیگه**:میتونیم بیایم توی کد زدن از یه روش دیگه استفاده کنیم که دیگه هیچ مشکلی پیش نیاد.سعی میکنم سری کدشو بزارم برای دوستان.

موفق باشید.

2015-07-15 12:15:50 -0500
کنکوری 1683 ● 13 ● 27 ● 40
پاک‌کردن   ویرایش پاسخ
نظرات

من الان خستم بعدا قشنگ درک میکنم کدشو میزنم...

2015-07-15 12:52:11 -0500 تنیسون

/__/

2015-07-15 12:54:29 -0500 کنکوری

تورو خدا جوری بگید ما هم بفهمیم آخه. :|

2015-07-17 05:24:22 -0500 سی پلاس پلاس

داداش کجاشو نفهمیدی؟؟بگو واست توضیح بدم...سعی کردم خوب بنویسم ...شرمنده بازم.

2015-07-17 05:27:36 -0500 کنکوری

@کنکوری خب الان dp_i رو داری میگی از جمع dp مقسوم علیه هاش بدست میاد؟...از چیشون بدست میاد؟

2015-07-17 06:37:10 -0500 تنیسون
3

نخونید دوستان غلطه . میشه درستش کرد باید رو شمولش کار کرد ولی خیلی طولانی میشه. اگه کسی درست کرد بنویسه.

میدونیم که حداکثر تعداد اعداد برابره با مجموع توان های عوامل اول عدد اصلی که برای 12 برابر با 2+1=3 است. فرض کن عدد اصلی x باشه (اینجا 12) و مجموع توان های عوامل اولش y (اینجا 3 ) . حالا یه عامل اول در نظر بگیر و فرض کن توانش تو x برابر z باشه.

حالا فرض کن بخوای z تا از این عددو بین y تا مکان پخش کنی. که جوابش میشه تعداد جواب های معادله $a_1 + a_2 + ... + a_y = z$ که برابره با $\binom{z+y-1}{y-1} $ . برای بقیه عوامل اول هم همین کارو میکنیم و این عددها رو تو هم ضرب میکنیم.

اما ما حالت هایی که 1 توشون هست رو هم شمردیم پس باید کمشون کنیم.از اصل شمول و عدم شمول استفاده میکنیم و حالت هایی که یدونه 1 دارن رو کم میکنیم و حالت هایی که 2 تا یک دارن رو اضافه میکنیم و همینطور تا آخر . یعنی جواب نهایی اینه : $$\prod \binom{z+y-1}{y-1} -$$ $$\binom{y}{1} \prod \binom{z+y-2}{y-2}+ $$ $$ \binom{y}{2} \prod \binom{z+y-3}{y-3} - $$ $$ ... $$ الان مثال میزارم.

2015-07-15 11:22:32 -0500
روبیک 2379 ● 13 ● 27 ● 44
پاک‌کردن   ویرایش پاسخ
نظرات

همین که اینهمه نوشتی خودش + :D

2015-07-15 11:37:48 -0500 تنیسون

ماشالله.

2015-07-15 11:39:50 -0500 کنکوری

:D

2015-07-15 12:21:41 -0500 روبیک

/__/

2015-07-15 12:28:06 -0500 کنکوری

میگم یاده امتحان ریاضی دو افتادم با راه حلت،یه سوال داده بودن که من فکر میکردم سخته بعد یه شمول عدم شمول وحشتناک زدم خیلی خر کیف بودم که المپیادیمو از این حرفا اومدم بیرون دیدم همه یه ضرب ساده نوشتن به جواب رسیدن...

2015-07-15 12:30:58 -0500 کنکوری

پاسخ شما

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

پیش‌نمایش:

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