در زبان ستارهای کلماتی وجود دارد که به آنها پولاریس گفته میشود. کلمات پولاریس، کلماتی هستند که تمام حروف الفبای ستاره حداقل یکبار به صورت بزرگ یا کوچک در آن قابل مشاهده باشد.
حروفی که در الفبای زبان ستاره وجود دارد از a
تا z
همانند زبان انگلیسی میباشند.
مهدی به کلمات پولاریس علاقه دارد ولی از آنجایی که بد کد میزند از شما میخواهد برنامهای بنویسید که تشخیص دهد یک کلمه پولاریس است یا خیر.
در خط اول ورودی یک کلمه از زبان ستاره به شما داده میشود.
تضمین میشود همه ی حروف ورودی به صورت a-z & A-Z
میباشد.
بزرگ یا کوچک بودن حروف در خروجی تاثیر ندارد.
تضمین میشود طول کلمه ورودی بیشتر از 1
و حداکثر 200
میباشد.
اگر کلمه ی داده شده پولاریس باشد، باید در خروجی YES
چاپ کنید در غیر این صورت عبارت NO
را چاپ کنید.
حروف خروجی همه باید به صورت بزرگ باشد.
در این مسئله به شما یک رشتهی بزرگ از حروف کوچک انگلیسی و تعداد زیادی رشتههای کوچک (از حروف کوچک انگلیسی و حداکثر به طول ۴ کاراکتر) داده میشود و از شما خواسته میشود که تعداد رشتههای کوچکی که زیر رشتهی رشتهاصلی هستند را بیابید.
در خط اول ورودی رشتهی اصلی (حداکثر به طول ۱۰۰۰۰۰۰ کاراکتر از حروف کوچک انگلیسی) وارد میشود. سپس در خط بعد n (تعداد رشتههای کوچک) وارد میشود. سپس nتا رشته کوچک (حداکثر به طول ۴ کاراکتر) وارد میشوند.
خروجی تنها شامل یک عدد است که تعداد رشتههای کوچکی که زیررشتهی رشتهی اصلی هستند را نشان میدهد.
توضیح: رشتههای
{"a", "bc", "ghij", "st", "mnop", "c"}
زیررشتهی رشتهی اصلی هستند.
گالوم و فرودو در مسیر رفتن به موردور برای از بینبردن حلقه حوصلهشان سررفته و میخواهند بازی کنند. این بازی به اینصورت است که فرودو عدد طبیعی به گالوم میدهد و میگوید بین هر عدد و مقسومعلیه های آن و هرکدام از مقسومعلیهها و مقسومعلیههایشان و به همینترتیب تا ۱، یک یال بدونجهت وجود دارد. دراین گراف هیچ راسی به خودش یال ندارد. حال گالوم باید تعداد دورهای موجود در گراف حاصل را بین کند. اگر گالوم درست بگوید؛ فرودو حلقه را برای مدتی به او میدهد. به گالوم کمک کنید تا بتواند حلقه را بهدست آورد.
ورودی شامل دو خط میباشد که در خط اول عدد طبیعی و در خط دوم عدد طبیعی با فاصله از هم آمدهاند. اعداد ورودی در خط دوم حداقل ۱ و حداکثر ۱۰۰۰ میباشند.
خروجی تنها شامل یک خط است که تعداد دورهای موجود در گراف حاصل را نشان میدهد.
در گراف حاصل ۷ دور وجود دارد.
در گراف حاصل ۶ دور وجود دارد.
در این مسئله یک گراف اصلی و یک گراف الگو به شما داده میشود. حال شما میبایست تعداد زیر گرافهای موجود از گراف اصلی (شبیه به گراف الگو) را بیابید.
در خط اول ورودی (تعداد راسهای گراف اصلی) وارد میشود.
سپس در خط بعدی یک رشته (شناسه راس) و (شماره رنگ راس) برای راسهای گراف اصلی با یک فاصله از هم وارد میشوند.
سپس مقدار (تعداد یالهای گراف اصلی) وارد میشود.
سپس در خط بعدی دو رشته برای شناسهی راس مبدا و شناسهی راس مقصد یالهای گراف اصلی با یک فاصله از هم وارد میشوند.
در خط بعد (تعداد راسهای گراف الگو) وارد میشود.
سپس در خط بعدی یک رشته (شناسه راس) و (شماره رنگ راس) برای راسهای گراف الگو با یک فاصله از هم وارد میشوند.
سپس مقدار (تعداد یالهای گراف الگو) وارد میشود.
سپس در خط بعدی دو رشتهی شناسهی راس مبدا و شناسهی راس مقصد یالهای گراف الگو با یک فاصله از هم وارد میشوند.
خروجی تنها شامل یک عدد است که تعداد زیرگرافهای موجود از گراف اصلی (شبیه به گراف الگو) را نشان میدهد.
راس A | راس B | راس C | |
---|---|---|---|
زیرگراف ۱ | راس ۱ | راس ۲ | راس ۳ |
زیرگراف ۲ | راس ۱ | راس ۲ | راس ۴ |
زیرگراف ۳ | راس ۱ | راس ۲ | راس ۵ |
زیرگراف ۴ | راس ۱ | راس ۵ | راس ۳ |
زیرگراف ۵ | راس ۱ | راس ۵ | راس ۴ |
راس A | راس B | راس C | |
---|---|---|---|
زیرگراف ۱ | راس ۱ | راس ۲ | راس ۳ |
زیرگراف ۲ | راس ۱ | راس ۲ | راس ۴ |
زیرگراف ۳ | راس ۱ | راس ۲ | راس ۵ |
زیرگراف ۴ | راس ۱ | راس ۳ | راس ۲ |
زیرگراف ۵ | راس ۱ | راس ۳ | راس ۴ |
زیرگراف ۶ | راس ۱ | راس ۳ | راس ۵ |
زیرگراف ۷ | راس ۱ | راس ۴ | راس ۲ |
زیرگراف ۸ | راس ۱ | راس ۴ | راس ۳ |
زیرگراف ۹ | راس ۱ | راس ۴ | راس ۵ |
زیرگراف ۱۰ | راس ۱ | راس ۵ | راس ۲ |
زیرگراف ۱۱ | راس ۱ | راس ۵ | راس ۳ |
زیرگراف ۱۲ | راس ۱ | راس ۵ | راس ۴ |
راس A | راس B | |
---|---|---|
زیرگراف ۱ | راس ۱ | راس ۲ |
زیرگراف ۲ | راس ۲ | راس ۱ |
محدودیت زمان: ۲ ثانیه
محدودیت حافظه: ۵۰ مگابایت
در این سوال به هر بخش که پاسخ بدهید، نمرۀ همان قسمت را خواهید گرفت (توضیحات مربوط به امتیازدهی در انتهای صفحه قرار دارد)
در این سوال قصد داریم یک ماشین حساب برای سادهسازی عبارتهای جبری پیادهسازی کنیم. این ماشین حساب ۴ عمل اصلی جمع، تفریق، ضرب و تقسیم را پشتیبانی میکند.
+
: این عملگر مشابه جمع در ریاضی بوده و اگر عبارتهای سمت چپ و سمت راست این عملگر از یک درجه باشند، ضرایب آن دو جمع میشوند؛ در غیر اینصورت تغییری ایجاد نمیشود.-
: این عملگر مشابه تفریق در ریاضی بوده و اگر عبارتهای سمت چپ و سمت راست این عملگر از یک درجه باشند، ضریبِ عبارتِ سمتِ راست از ضریبِ عبارتِ سمتِ چپ کم میشود؛ در غیر اینصورت تغییری ایجاد نمیشود.*
: این عملگر مشابه ضرب در ریاضی بوده و ضرایب عبارتهای سمت چپ و سمت راست را در یکدیگر ضرب میکند و توانِ آنها را جمع میکند.%
: این عملگر مشابه تقسیم در ریاضی بوده و ضرایب عبارتهای سمت چپ را بر ضرایب عبارتهای سمت راست تقسیم میکند و توانِ آنها را تفریق میکند.اولویت محاسباتی، از زیاد به کم، به ترتیب پرانتز، توان، ضرب، تقسیم، جمع و تفریق میباشد. برای عملگرهایی که اولویت یکسان دارند، عملگری که در سمت چپ قرار دارد اولویت بالاتری بهدست میآورد.
ورودی تنها شامل یک خط است که در آن یک عبارت جبری با طول حداکثر ۱۰۰۰ داده میشود.
a/b
) و صحیح (مثلاً c
) داده میشود.d
) داده میشود.
خروجی برنامهی شما باید شامل یک خط باشد که فرم سادهشدهی ورودی را به ترتیبِ نزولیِ توانِ چاپ کند.
23x^0
باید 23
نمایش دادهشود.1
نمایش دادهنشود. مثلاً به جای 2x^3
باید x^3
نمایش دادهشود. 1
نمایش دادهنشود. مثلاً به جای 23x^1
باید 23x
نمایش دادهشود.p/q
) نمایشداده شوند، که در آن q
باید یک عدد طبیعی و p
یک عدد صحیح باشد و p
بر q
بخشپذیر نباشد. در صورتی که q
برابر با عدد 1
بود، ضریب به صورت صحیح (مثلاً p
) نمایش دادهشود. تضمین میشود که q
هیچگاه برابر با 0
نمیشود.ابتدا جملات را به شکل زیر ساده میکنیم:
عبارت زیر بدستمیآید:
در نهایت ضرایبِ جملاتی را که درجۀ یکسان دارند، باهم جمع میکنیم و پاسخ مسئله بدستمیآید:
ابتدا جملات را به شکل زیر ساده میکنیم:
عبارت زیر بدستمیآید:
در نهایت ضرایبِ جملاتی را که درجۀ یکسان دارند، باهم جمع میکنیم و پاسخ مسئله بدستمیآید: