Challenger

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

Challenger

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

Challenger
طبقه بندی موضوعی
پیوندهای روزانه

پاسخ پرسش CF-157-E

يكشنبه, ۲۷ فروردين ۱۳۹۱، ۰۹:۵۲ ب.ظ

Codeforces / Contest 157 / Problem E : Cipher

صورت اصلی سوال : http://codeforces.com/contest/157/problem/E

ترجمه :

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

برای مثال رشته ی abc را می توانیم به رشته ی bac ، acb و یا bbb (در دو مرحله) تبدیل کنیم .

می خواهیم به ازای رشته ی s تعداد رشته هایی را بیابیم که می توان این رشته را به آن ها تبدیل کرد .

توجه کنید این رشته ها شامل خود این رشته نمی شوند .

ورودی :

در اولین خط ورودی عدد t که تعداد ورودی هاست داده می شود و در t  خط بعدی در هر خط یک رشته ی s داده می شود .

t حداکثر 104 و طول هر رشته ی s حداکثر 100 است .
خروجی :
در هر خط پاسخ را به ازای ورودی متناظر به آن را چاپ کنید .
از آنجایی که این مقدار ممکن است بسیار بزرگ باشد باقیمانده آن را بر 7+109 را چاپ کنید.


شرح راه حل : می توانیم با استقرار ثابت کنیم هر رشته s را می توانیم به تمام رشته هایی که مجموع حرف آن برابر با مجموع حروف s است تبدیل کنیم و مجموع حروف هر رشته ای که بتوانیم s را به آن تبدیل کنیم برابر با مجموع حروف s است ....
کد راه حل : http://codeforces.com/contest/157/submission/1540177


موافقین ۵ مخالفین ۱ ۹۱/۰۱/۲۷
محمد مهدی جهان آرا

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی