ترجمه سوالات سایت های معتبر برنامه نویسی

۱۵ مطلب در دی ۱۳۹۰ ثبت شده است

543 - Goldbach's Conjecture

543 - Goldbach's Conjecture

محدودیت زمانی: 3 ثانیه

فرضیه گلدباخ

در سال 1742، ریاضی دانی آلمانی به نام کریستین گلدباخ ، نامه ای به لئونارد اویلر مبنی بر ساخت این فرضیه ارسال می کند:

"همه ی اعداد بزرگتر از 2 را می توان به صورت مجموع 3 اعداد اول نوشت."

او در این فرضیه مجبور به پذیرفتن 1 به عنوان عددی اول شد. پس از مدتی اویلر این فرضیه را به شکل زیر تصحیح کرد:

همه ی اعداد زوج بزرگتر یا مساوی 4 را می توان به صورت مجموع 2 عدد اول نمایش داد.

برای مثال:

8 = 3 + 5

20 = 3 + 17 = 7 + 13

42 = 5 + 37 = 11 + 31 = 13 + 29 = 19 + 23

تا کنون این فرضیه اثبات نشده است. شما وظیفه دارید فرضیه ی اویلر را مورد بررسی قرار دهید.

ورودی

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

ورودی 6 <= n < 1000000 است.

ورودی ها توسط یک صفر به پایان می رسند.

خروجی      

به ازای هر ورودی n = a + b را چاپ کنید؛ به طوری که  aو b عددی فرد و اول باشند. توجه داشته باشید که بین هر عدد و عملگر باید یک فاصله باشد. اگر بیش از یک پاسخ وجود داشت، جفتی را انتخاب کنید که b – a بیشترین مقدار باشد. در صورت وجود نداشتن پاسخ به ازای ورودی، عبارت زیر را در یک خط چاپ کنید:

Goldbach's conjecture is wrong.

 

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۳۰ دی ۹۰ ، ۲۲:۰۲ ۰ نظر موافقین ۱ مخالفین ۰
کیارش گل زردی

11827 - Maximum GCD

دوازدهمین سوال از سری سوالات UVa :

 

11827 - Maximum GCD

محدودیت زمانی : 1 ثانیه

بزرگترین ب.م.م

با گرفتن تعدادی عدد صحیح، باید بزرگترین ب.م.م ممکن بین دو عدد از آن ها را پیدا کنید.

 

ورودی

در خط اول ورودی عدد صحیح N(1<N<100)   می آید که تعداد تست ها را نشان می دهد. در ادامه N خط می آید که هر یک شامل M (1<M<100) عدد صحیح مثبت ،که باید بزرگترین ب.م.م میان آن ها را پیدا کنید، می شود.

 

خروجی

برای هر تست بزرگترین ب.م.م ممکن برای هر جفت عدد را چاپ کنید.

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۳۰ دی ۹۰ ، ۲۰:۰۰ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

871 - Counting Cells in a Blob

 

871 - Counting Cells in a Blob

محدودیت زمانی : 3 ثانیه

 

شمارش خانه ها در جزیره

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

در شکل زیر یک جدول شامل سه جزیره نمایش داده شده است. (بزرگترین جزیره 5 خانه را در بر می گیرد.)

برنامه ای بنویسید با توجه با جزیره های داده شده، اندازه ی بزرگترین جزیره را محاسبه کند.

 

ورودی

ورودی با یک عدد صحیح مثبت که تعداد تست ها را نشان می دهد، آغاز می شود و یک خط خالی پس از آن می آید ، همچنین یک خط خالی بین هر دو تست متوالی وجود دارد. در هر تست یک جدول شامل اعداد 1 و 0 داده می شود که 1 نشان دهنده ی خانه ی پر و 0 نشان دهنده ی خانه ی خالی است. جدول حداکثر می تواند یک جدول 25*25 باشد.

 

خروجی

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

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۲۳ دی ۹۰ ، ۱۶:۴۸ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

Counting Stars - 11244

سوال دهم! :

 

11244 - Counting Stars

محدودیت زمانی : 10 ثانیه

شمردن ستاره ها

معمولا در یک شب مهتابی مردم کمتر به ستاره ها توجه می کنند و در بیشتر ماه توجهشان را جلب می کند اما در این سوال شما باید برنامه ای بنویسید که بتواند تعداد ستاره های آسمان را بشمارد! در این مسئله آسمان یک صفحه دو بعدی در نظر گرفته می شود که در آن نقطه ی خالی با ‘.’ (ASCII value 46) و نقطه ی پر با ‘*’  (ASCII value 42) نمایش داده می شوند. از آنجایی که ستاره ها بسیار کوچکند نمی توانند دو نقطه را اشغال کنند و همچنین در آسمان ما هیچ دو ستاره ی مجاوری وجود ندارد. پس دو یا چند نقطه ی پر مجاور می تواند نشان دهنده ی ماه، ستاره های دنباله دار، خورشید و یا حتی بشقاب پرنده ها باشد اما قطعا نمی تواند ستاره باشد. همه ی 8 نقطه ی ممکن دور یک نقطه در مجاورت آن قرار دارد. در شکل زیر نقطه سیاه که در مرکز قرار دارد 8 نقطه ی مجاور دارد که سه تا از آن ها پر هستند.

*..

.**

..*

ورودی

فایل ورودی شامل حداکثر 1000 سری ورودی می شود و شرح هر یک اینچنین است:

هر سری با دو عدد صحیح r و c (0< r, c<101) آغاز می شود که  نشان دهنده ی تعداد ردیف و ستون تصویری که در ادامه می آید می باشند. سپس در ادامه تصویر آسمان در r خط که هر یک شامل c کاراکتر می شوند، می آید. ورودی به وسیله ی یک خط که دربردارنده ی دو صفر است، پایان می پذیرد.

خروجی

برای هر سری ورودی یک خط شامل یک عدد که نشان دهنده تعداد ستاره های آسمان داده شده است،  خروجی داده می شود.

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۲۱ دی ۹۰ ، ۱۷:۱۶ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

100 - The 3n + 1 problem

این هم از نهمین سوال :

 

100 - The 3n + 1 problem

محدودیت زمانی : 3 ثانیه

مسئله 3n + 1”

الگوریتم زیر را در نظر بگیرید:

  1. عدد n را ورودی بگیر.
  2. عدد n را چاپ کن.
  3. اگر n=1 : توقف کن.
  4. اگر n فرد بود:  n <-- 3n + 1
  5. اگر n زوج بود: n <-- n/2
  6. به شماره 2 برو.

اگر عدد 22 را ورودی بدهیم ، چنین دنباله ی اعدادی چاپ خواهد شد:

22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

این که الگوریتم بالا به ازای هر عدد صحیحی به عنوان ورودی پایان پذیرد(با چاپ عدد 1) ، یک حدس است.با وجود سادگی این الگوریتم هنوز درست بودن این حدس اثبات نشده است. اما در مورد اعداد صحیح مانند n به طوری که 0 < n < 1,000,000 تایید شده است.

در مورد ورودی n ، محاسبه ی تعداد اعدادی که چاپ می شوند ( با احتساب 1) ، امکان پذیر است. در مورد n ، این ویژگی ، طول چرخه ی n نامیده می شود. در مثال بالا طول چرخه ی 22 برابر با 16 است.

برای هر دو عدد i و j  شما باید بزرگترین طول چرخه ی موجود در میان همه ی اعداد بین i و j را محاسبه کنید.

ورودی

ورودی شامل یک سری جفت اعداد صحیح i وj  و هر جفت در خطی جداگانه می شود. همه ی اعداد صحیح کمتر از 1،000،000 و بیشتر از 0 هستند.

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

می توانید فرض کنید که در هیچ پردازشی عددی از عدد صحیح 32 بیتی (2147483647) بیشتر نمی شود.

ورودی با انتهای فایل به پایان می رسد.

 

خروجی

برای هر جفت ورودی اعداد صحیح i و j  شما باید i و j  و بزرگترین طول چرخه ی موجود در میان همه ی اعداد صحیح بین i و  j و خود آن ها را خروجی دهید. این سه عدد باید در همه ی خط ها و به ازای هر خروجی برای هر ورودی، با دست کم یک space از یکدیگر جدا شوند. اعداد i و j  باید با همان ترتیبی که در ورودی ظاهر شده اند، در خروجی چاپ شوند و در ادامه نیز در همان خط بزرگترین طول چرخه خواهد آمد.

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۱۷ دی ۹۰ ، ۱۹:۳۹ ۱ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

10905 - Children's Game

10905 - Children's Game

محدودیت زمانی : 3 ثانیه

بازی اعداد

این سوال در مورد یک بازی است که در آن تعدادی عدد در اختیار افراد قرار می گیرد و هر کس می تواند با پشت سرهم گذاشتن آن اعداد یک عدد بزرگ بسازد. مثلاً برای 4 عدد صحیح 123 و 124 و 56 و 90 می توان اعداد 1231245690 و 1241235690 و 5612312490 و 9012312456 و 9056124123 و غیره را تولید کرد. در حقیقت 24 عدد مختلف با این اعداد می توان ساخت. ولی مشخص است که 9056124123 بزرگترین عددی است که می توان ساخت. برنده بازی کسی است که بزرگترین عدد ممکن را بسازد.

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

ورودی

هر تست با یک عدد صحیح مثبت  N(≤50)آغاز می شود. در خط های بعدی N عدد صحیح مثبت می آید. ورودی با صفر پایان می پذیرد و این عدد نباید پردازش شود.

خروجی

به ازای هر تست ورودی ، بزرگترین عددی را که می توان با اعداد موجود در آن تست ساخت را نشان دهید

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۱۱ دی ۹۰ ، ۲۰:۲۸ ۱ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

591 - Box of Bricks

نویسنده : سیّد علیرضا خوش قلب

591 - Box of Bricks

محدودیت زمانی : 3 ثانیه

جعبه آجر ها

باب کوچولو بازی کردن با جعبه آجر ها را دوست دارد. او آجر ها را روی یکدیگر قرار می دهد و ستون هایی با ارتفاع های متفاوت درست می کند. به خواهرش می گوید:"نگاه کن! من دیوار درست کردم!"  ولی خواهرش می گوید : "تو باید همه ستون ها را هم ارتفاع کنی تا بشود یک دیوار واقعی" بعد از کمی تامل باب فهمید خواهرش درست می گوید. حال او باید همه را چک می کرد که ارتفاعشان یک اندازه ثابت باشد. اما از آنجایی که او تنبل است می خواهد بتواند همه را با کمترین تعداد جابجا کردن آجر هم ارتفاع کند.

آیا شما می توانید به او کمک کنید؟

 

ورودی

ورودی شامل مجموعه های مجزا است. برای هر مجموعه ابتدا N  تعداد ستون هایی که باب ساخته می آید سپس در N خط بعد ارتفاع هر ستون hi که هر 1 واحد به معنای 1 آجر است. 0<n<51 , 0<hi<101

نکته : کل تعداد آجرها بر n بخش پذیر است. بنابراین می توان آنها را طوری جابجا کرد که همگی هم ارتفاع بشوند.

0 نشان دهنده پایان مجموعه هاست.

خروجی

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

"The minimum number of moves is k. "  که در واقع  k کمترین تعداد جابجایی است که برای یکسان شدن ارتفاع نیاز است.

در آخر هر مجموعه یک خط خالی چاپ کند

نمونه ها و لینک ها در ادامه مطلب....

ادامه مطلب...
۱۰ دی ۹۰ ، ۲۳:۳۱ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

Ugly Numbers-136

نویسنده : سیّد علیرضا خوش قلب

136 - Ugly Numbers

محدودیت زمانی : 3 ثانیه

اعداد زشت

اعداد زشت (Ugly Numbers) اعدادی هستند که تنها مقسوم علیه های اولشان 2و3و5 باشد.

11 عدد زشت اول به این صورت اند:

1 - 2 - 3 - 4 - 5 - 6 - 8 - 9 - 10 - 12 - 15

برنامه ای بنویسید که 1500 امین عدد زشت را چاپ کند.

ورودی و خروجی

برنامه هیچ ورودی نداشته و تنها در یک خط باید بنویسد که 1500 امین عدد زشت چیست.

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۱۰ دی ۹۰ ، ۲۲:۵۰ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

384 - Slurpys

پنجمین سوال ضمن تشکر از آقای رضی زاده!:

 

384 - Slurpys

محدودیت زمانی : 3 ثانیه

توضیح سوال

یک رشته از حروف "Slump" است اگر خواص زیر را دارا باشد:

1.         اولین حرف آن D یا E باشد

2.         بعد از حرف اول یک یا چند F آمده باشد.
3.            بعد از یک یا چند F یک رشته ی با خواص "Slump" یا یک حرف G آمده باشد که پایان دهنده ی رشته است. مثلاً DFFEFFFG یک رشته ی "Slump"

است، زیرا اولین حرف آن D است و سپس دو تا F آمده و پس از آن رشته ی EFFFG آمده که یک رشته ی "Slump" است و پایان بخش رشته است.

4.         هیچ رشته ی دیگری به غیر از خواص بالا "Slump" نیست.

 

یک رشته از حروف"Slimp " است اگر خواص زیر را دارا باشد :

1.         اولین حرف آن A باشد.

2.         اگر یک رشته ی دو حرفی "Slimp " باشد، حتماً دومین (آخرین) حرف آن H است.

3.         اگر دو حرفی نبود، یکی از دو رشته ی زیر است:

الف)       بعد از حرف A یک حرف B آمده و بعد از آن یک رشته با خواص "Slimp " آمده و بعد از آن یک C آمده است.

ب)        بعد از حرف A یک حرف یک رشته با خواص "Slump" آمده و بعد از آن یک C آمده است.

4.         هیچ رشته ی دیگری به غیر از خواص بالا "Slimp " نیست.

 

یک رشته از حروف "Slurpy " است اگر از یک رشته ی "Slimp " که در ادامه ی آن یک رشته ی "Slump" آمده باشد، تشکیل شده باشد.

مثال:

 Slump: DFG, EFG, DFFFFFG, DFDFDFDFG, DFEFFFFFG هستند

 Slump: DFEFF, DFAHG, DEFG, DG, EFFFFDG نیستند

 Slimp : AH, ABAHC, ABABAHCC, ADFGC, ADFFFFGC, ABAEFGCC, ADFDFGC هستند

 Slimp : ABC, ABAH, DFGC, ABABAHC, ADGC نیستند

 Slurpy : AHDFG, ADFGCDFFFFFFG, ABAEFGCCDFEFFFFFG هستند

 Slurpy : AHDFGA, DFGAH, ABABCC نیستند

ورودی

در خط اول عدد n آمده که نشان دهنده ی تعداد جملات ورودی است. سپس n خط و در هر خط یک جمله که طول آن بزرگتر از صفر و کوچکتر از 81 است آمده است. جملات فقط از حروف بزرگ A, B, C, D, E, F, G, H تشکیل شده اند.

خروجی

در خط اول خروجی عبارت SLURPYS OUTPUT را چاپ کنید. سپس برای هر جمله از ورودی اگر جمله " Slurpy " بود، باید Yes و در غیر اینصورت No بنویسید و در انتها هم در یک خط عبارت END OF OUTPUT را چاپ کنید

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۱۰ دی ۹۰ ، ۲۰:۳۹ ۰ نظر موافقین ۱ مخالفین ۰
سیّد پارسا میرطاهری

880 - Cantor Fractions



 

و سوال چهام...:

880 - Cantor Fractions


محدودیت زمانی : 3 ثانیه

کسرهای کانتور

گرافی به شکل زیر وجود دارد که مبدا حرکت آن مختصات 1 - 1 و شکل حرکت آن قطری می باشد. یعنی از نقطه ی 1 - 1 به نقطه ی 2 - 1 رفته و از آن جا یک قطر را کامل می کند و به سر قطر دیگر می رود؛ به عبارت دیگر از نقطه ی 2 - 1 به نقطه ی 1 - 2 و از آن جا به مختصات 3 - 1 می رود. سپس با گذشتن از نقاط 2 - 2 و 1 - 3 این روند ادامه پیذا می کند.

(توجه شود که در مختصات دهی بالا، عدد نخست مختصات عمودی و عدد دوم مختصات افقی نقاط است)

 

 
   

                                                                               


برای کسری نشان دادن این مختصات ها، مختصات عمودی نقطه را در صورت و مختصات افقی را در مخرج می نویسیم. در این صورت شش کسر که نشان دهنده ی مختصات شش نقطه ی اول این دنباله می باشد، بدین شکل است:

                       

                               


شما باید iامین کسر این دنباله را پیدا کنید

 

ورودی

ورودی شامل یک عدد صحیح مثبت (i) است .

 

خروجی

خروجی در یک خط آمده که همان iامین کسر دنباله است. چگونگی نشان دادن کسر بدین شکل می باشد؛ ابتدا صورت کسر نوشته شده، سپس یک اسلش آمده (/) و در آخر مخرج نوشته می شود. توجه داشته باشید که کسر نباید در حالت ساده شده باشد.

نمونه ها و لینک ها در ادامه مطلب...

ادامه مطلب...
۱۰ دی ۹۰ ، ۱۹:۱۷ ۱ نظر موافقین ۱ مخالفین ۰
کیارش گل زردی