A Drop of the Programming Sea

یک قطره از دریای برنامه نویسی: وبلاگ امیرحسین مهدی‌نژاد، برنامه‌نویس، مدرس برنامه‌نویسی و دانشجوی مهندسی کامپیوتر

A Drop of the Programming Sea

یک قطره از دریای برنامه نویسی: وبلاگ امیرحسین مهدی‌نژاد، برنامه‌نویس، مدرس برنامه‌نویسی و دانشجوی مهندسی کامپیوتر

۲ مطلب در اسفند ۱۳۹۲ ثبت شده است

قلی در حال ساخت یک وب سایت است و الآن او روی بخش شماره صفحات پایین صفحه کار می کند. کل سایت n صفحه دارد که از 1 تا n شماره گذاری شده اند و برای کاربری که هم اکنون در صفحه ی p ام سایت باشد، پیمایشگر صفحات (navigation) به صورت زیر خواهد بود:

<< p - k p - k + 1 ... p - 1 (p) p + 1 ... p + k - 1 p + k >>

وقتی کسی بر روی دکمه ">>" کلیک می کند، به صفحه 1 هدایت می شود و زمانی که کسی بر روی دکمه "<< " کلیک می کند به صفحه n هدایت می شود. و البته اگر کسی بر روی اعداد کلیک کند، به صفحه مربوطه هدایت می شود و توجه داشته باشید که فقط k صفحه از راست و k صفحه از سمت چپ صفحه ای که در آن حضور دارد قابل رؤیت است.

● برخی شرایط در navigation وجود دارد :

      اگر صفحه ی 1 قابل رؤیت است، دکمه ">>" نباید چاپ شود.

      اگر صفحه ی n قابل رؤیت است، دکمه "<<" نباید چاپ شود.

      اگر شماره صفحه کوچکتر از 1 یا بیشتر از n است ، نباید چاپ شود .

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

input
9 6 3
output
<< 3 4 5 (6) 7 8 9
۰ نظر موافقین ۱ مخالفین ۰ ۱۷ اسفند ۹۲ ، ۲۲:۲۶
Amirhossein Mahdinejad

قلی برنامه نویس، روشن کردن شمع ها را دوست دارد، بنابراین در این سال او تصمیم گرفت اتاق خود را با شمع روشن نگه دارد. قلی در آغاز a تا شمع دارد. او می داند که با روشن کردن هر شمع، آن شمع یک ساعت روشنایی ایجاد کرده و سپس خاکستر می شود.

از آنجایی که قلی باهوش است، می تواند با هر b تا از خاکسترهای شمع های قبلی، شمع جدیدی مثل همه ی شمع های قبلی بسازد که می توانند همانند قبلی ها استفاده شوند.

به فرض اینکه همه ی a شمع اول و همه ی شمع های ایجاد شده از خاکستر ها کاملاً مشابه باشند، قلی می خواهد بداند در بهترین حالت، تا چند ساعت بعد از روشن کردن شمع اوّل، اتاقش روشن می ماند.

input
6 3
output
8
۰ نظر موافقین ۰ مخالفین ۰ ۰۹ اسفند ۹۲ ، ۲۱:۴۲
Amirhossein Mahdinejad