بکندباز

این تمرین بر اساس بازی Uno نوشته شده است.

تابعی بنویسید که دارای دو آرگومان باشد: (1) دست فعلی بازیکن و (2) بالاترین کارت فعلی روی میز. اگر بازیکن بتواند کارتی بگذارد، این تابع True برمی‌گرداند، و اگر بازیکن مجبور باشد از از بیرون کارت بکشد، False را برمی‌گرداند.

طبق قانون این بازی، در دو صورت بازیکن می تواند روی کارت فعلی کارت بگذارد:

  • کارتی هم رنگ با کارت فعلی روی میز داشته باشد
  • کارتی هم عدد با کارت فعلی روی میز داشته باشد
can_play(["yellow 3", "yellow 7", "blue 8", "red 9", "red 2"], "red 1") ➞ True
# بازیکن کارت قرمز دارد، و آخرین کارت روی میز نیز قرمز است.

can_play(["yellow 3", "yellow 7"], "blue 7") ➞ True
# بازیکن کارت شماره 7 دارد و آخرین کارت روی میز 7 است.

نمونه ورودی و خروجی

can_play(["yellow 3", "yellow 5", "red 8"], "red 2") ➞ True

can_play(["yellow 3", "yellow 5", "red 8"], "blue 5") ➞ True

can_play(["yellow 3", "blue 5", "red 8", "red 9"], "green 4") ➞ False

نکات

  • اگر بازیکن هیچ کارتی نداشت (رشته خالی)، False برگردانده شود.
can_play(["yellow 3", "yellow 5", "red 8"], "red 2")  ➞ True
can_play(["yellow 3", "yellow 5", "red 8"], "blue 5")  ➞ True
can_play(["yellow 3", "blue 5", "red 8", "red 9"], "green 4")  ➞ False
can_play(["yellow 3", "red 8"], "green 2")  ➞ False

پاسخ های کاربران به این تمرین

alitayyar
امتیاز:‌ 9544
تصحیح اتوماتیک 0 0
‎پایتون‎
8 دي 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

quchani
امتیاز:‌ 5550
تصحیح اتوماتیک 0 0
‎پایتون‎
28 آذر 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

aliahmadi98
امتیاز:‌ 7240
تصحیح اتوماتیک 0 0
‎پایتون‎
30 شهريور 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

shayan0081
امتیاز:‌ 5900
تصحیح اتوماتیک 0 0
‎پایتون‎
27 شهريور 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Python Life
امتیاز:‌ 3135
تصحیح اتوماتیک 0 0
‎پایتون‎
11 شهريور 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

EmEsDigi
امتیاز:‌ 1649
تصحیح اتوماتیک 0 0
‎پایتون‎
21 مرداد 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

amirhassan
امتیاز:‌ 2470
تصحیح اتوماتیک 0 0
‎پایتون‎
28 تير 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

parsiya
امتیاز:‌ 4000
تصحیح اتوماتیک 0 0
‎پایتون‎
21 تير 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

user-mqtz
امتیاز:‌ 6355
تصحیح اتوماتیک 0 0
‎پایتون‎
11 خرداد 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Amin
امتیاز:‌ 9636
تصحیح اتوماتیک 0 0
‎پایتون‎
31 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

fxfix3r
امتیاز:‌ 1137
تصحیح اتوماتیک 0 0
‎پایتون‎
30 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

Mina
امتیاز:‌ 5044
تصحیح اتوماتیک 0 0
‎پایتون‎
27 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

amirsajad
امتیاز:‌ 875
تصحیح اتوماتیک 0 0
‎پایتون‎
26 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

mohamad0232
امتیاز:‌ 5850
تصحیح اتوماتیک 0 0
‎پایتون‎
24 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

ali7mohammadi
امتیاز:‌ 3653
تصحیح اتوماتیک 0 0
‎پایتون‎
24 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

ali-zizo
امتیاز:‌ 7195
تصحیح اتوماتیک 0 0
‎پایتون‎
24 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

mantix
امتیاز:‌ 15016
تصحیح اتوماتیک 0 0
‎پایتون‎
24 ارديبهشت 1402

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید