حل تمرین شماره رند کوئرا با پایتون
در این نوشته به روش حل یکی از سوالات برنامه نویسی وبسایت کوئرا میپردازیم.
حل تمرین شماره رند کوئرا با پایتون
عمو اسکروچ تصمیم گرفته در پایان سال یک شماره تلفن رند سفارش بدهد. شماره عمو اسکروچ باید 8 رقمی شود و با صفر شروع نشود (برای مثال شماره تلفن 01234567 معتبر نیست). عمو اسکروچ معتقد است یک شماره تلفن رند است اگر حداقل یکی از شرایط زیر را برقرار شود:
- رقمی موجود شود که حداقل 4 بار در آن تکرار شود: برای مثال شمارههای 73433323 و 12131415 هر دو این ویژگی را دارند زیرا در شمارهی اول رقم 3، 5 بار و در شمارهی دوم رقم 1، 4 بار تکرار شده ولی شمارههای 12435127 و 70215498 این ویژگی را ندارند. (چون هر یک از ارقام 0 تا 9 حداکثر دو بار در این شماره تکرار شده است)
- سه رقم متوالی در این شماره برابر شوند: مثلاً شمارههای 85711124 و 77777521 این ویژگی را دارند زیرا در شماره اول 3 رقم 1 متوالی و در شماره دوم 4 رقم 7 متوالی وجود دارد؛ ولی شمارههای 11223344 و 12121212 این ویژگی را ندارند چون هیچ سه رقم متوالی آنها یکسان نیستند.
- شماره آینهای شود. یعنی اگر شماره را از راست بنویسیم برابر با خودش شود: مثلاً شمارههای 12344321 و 17288271 این ویژگی را دارند ولی دو شمارههای 17569823 و 12344320 این ویژگی را ندارند. عمو اسکروچ در حال انتخاب شمارهی رند و از از شما میخواهد که به او کمک کنید تا شمارههای رند را تشخیص دهد. برای همین به شما t شماره تلفن میدهد و از شما میخواهد بررسی کنید که کدام یک از این t شماره تلفن، رند هستند.
ورودی
در سطر اول ورودی یک عدد طبیعی t آمده که نشاندهنده تعداد شمارههایی است که شما باید بررسی کنید. در هر یک از t سطر بعدی یک رشته ۸ رقمی که نشاندهنده یک شماره تلفن است به شما داده میشود.
تضمین میشود شمارههای تلفن با رقم 0 آغاز نمیشود.
خروجی
خروجی شامل t سطر است. اگر شمارهی kاًم داده شده در ورودی رند بوده در سطر kاًم خروجی عبارت Ronde! و در غیر این صورت عبارت Rond Nist را چاپ کنید.
مثال
ورودی نمونه 1
5 11111111 12345678 34666825 12344321 17544721
خروجی نمونه 1
Ronde! Rond Nist Ronde! Ronde! Rond Nist
- شمارهی 11111111 رند است زیرا هر سه ویژگی را دارد.
- شمارهی 12345678 رند نیست زیرا هیچ کدام از سه ویژگی گفته شده را ندارد.
- شمارهی 34666825 رند است زیرا ویژگی دوم را دارد یعنی سه رقم متوالی ۶ را دارد.
- شمارهی 12344321 رند است زیرا ویژگی سوم را دارد یعنی آینهای است و اگر آن را از راست بخوانیم، با خود آن شماره برابر میشود.
- شمارهی 17544721 رند نیست چون هیچ کدام از سه ویژگی گفته شده را ندارد.
کد پایتون سوال تمرین شماره رند
t = int(input()) for _ in range(t): number = input().strip() is_ronde = any(number.count(digit) >= 4 for digit in set(number)) if not is_ronde: for i in range(6): if number[i] == number[i+1] == number[i+2]: is_ronde = True break if not is_ronde: if number == number[::-1]: is_ronde = True if is_ronde: print("Ronde!") else: print("Rond Nist")
منبع سوال: کوئرا
اگر نیاز به حل تمرینهای دیگری از کوئرا دارید در بخش نظرات همین نوشته برای ما بنویسید.
ارسال پاسخ