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

"جهانگیر توی یه شرکت کامپیوتری کار می کنه. قراره جهانگیر برنامه ای بنویسه که تعیین کنه آیا می توان AB و BA رو در یک رشته ی دیگه پیدا کرد بدونه اینکه با هم همپوشانی (overlap) داشته باشن؟ ترتیبش AB و BA هم مهم نیست. یعنی مثلا اگه ورودی ABBA باشه پاسخ YES هست. اگه ورودی BAAB هم باشه بازم پاسخ YES هست. ولی اگه ورودی ABA باشه پاسخ NO هست یا اگه ورودی ABHA باشه بازم پاسخ NO هست. می تونید کمک جهانگیر کنید این برنامه رو بنویسه؟

لطفا YES و NO را دقیقا به همین شکل با حروف بزرگ در خروجی چاپ کنید."

این سوالو هرکاری میکنم نمیتونم مشکل همپوشانیشو حل کنم چه جوری میشه فاصله رو رعایت کنه؟

پاسخ ها

sokanacademy forum
کاربر سکان آکادمی 4 سال پیش

input_str = input()
if 'AB' in input_str and 'BA' in input_str:
 x = input_str.index('AB')
 y = input_str.index('BA')
 if abs(y - x) >= 2:
 print('YES')
 else:
 print('NO')
else:
 print('NO')
sokanacademy forum
کاربر سکان آکادمی 4 سال پیش

مرسی

sokanacademy forum
کاربر سکان آکادمی 3 سال پیش

واسه رشته زیر no میده در حالی که باید yes بده

ABABAB

sokanacademy forum
کاربر سکان آکادمی 3 سال پیش

بعد از حساب کردن ایندکس برای X باید

input_str=input_str.replace("AB","XX",1)

و یه حلقه جدا برای y حساب کرد ...

sokanacademy forum
کاربر سکان آکادمی 3 سال پیش

میشه بیشتر توضیح بدی ؟ لطفا ؟

sokanacademy forum
کاربر سکان آکادمی 3 سال پیش
a= input('')
if 'AB' in a and 'BA' in a: 
 print("YES")
else:
 print("NO")
sokanacademy forum
کاربر سکان آکادمی 3 سال پیش

اشتباهه دوست عزیز اینجوری شما ABDD هم بزنی مینویسه .YES

sokanacademy forum
کاربر سکان آکادمی 3 سال پیش
input_str = input()
if 'AB' in input_str and 'BA' in input_str and len(input_str) >= 4:
 print('YES')
else:
 print('NO')
online-support-icon