بتایپ
⏱️ محدودیت زمان
۱ ثانیه
💾 محدودیت حافظه
۲۵۶ مگابایت
علی که در تایپ کردن دچار مشکل شدهاست، از دوستش پاشا میخواهد تا جملهای را برای او تایپ کند. پاشا که قصد دارد تایپ سریع خود را به نمایش بگذارد، شروع به نوشتن جمله میکند. اما متأسفانه به جای استفاده از دکمهی Backspace (⌫) برای پاک کردن آخرین حرف تایپشده (در صورت وجود)، به اشتباه دکمهی مساوی (=) را فشار میدهد.
پاشا رشتهای که تایپ کرده است را به شما میدهد و از شما میخواهد رشتهی اصلی و صحیح را که قصد داشته تایپ کند، به او برگردانید.
💡 راهنمایی
برای حل این مسئله میتوانید از پشته (Stack) استفاده کنید. فشردن دکمهی Backspace معادل حذف آخرین عنصر از پشته است.
📥 ورودی
- در یک خط ورودی، یک رشتهی
Sداده میشود که نمایانگر متن تایپشده توسط پاشا است. - تضمین میشود که این رشته فقط شامل حروف کوچک انگلیسی و کاراکتر
=است.
1 ≤ |S| ≤ 10``000
📤 خروجی
در تنها خط خروجی، رشتهی اصلی و صحیح را که علی قصد داشته تایپ کند چاپ کنید.
🎯 نمونه
ورودی ۱
sall=am
خروجی ۱
salam
s a l l = a m ← حذف l ← s a l a m
ورودی ۲
testtwoo===wo
خروجی ۲
testtwo
testtwoo===wo ← سه بار Backspace حذف o o w ← testtwo
ورودی ۳
====testtwoo===wo
خروجی ۳
testtwo
چهار = در ابتدا ← هیچ حرفی برای حذف نیست ← نادیده گرفته میشوند
💡 راهنمایی نهایی
s = input()
stack = []
for ch in s:
if ch == '=':
if stack: # اگر پشته خالی نباشد
stack.pop()
else:
stack.append(ch)
print(''.join(stack))
- هر حرف را به پشته اضافه میکنیم.
- اگر به
=رسیدیم و پشته خالی نبود، آخرین عنصر را حذف میکنیم.- اگر پشته خالی بود،
=را نادیده میگیریم.- در نهایت، عناصر پشته را به هم متصل کرده و چاپ میکنیم.
- اگر پشته خالی باشد،
=هیچ اثری ندارد.- فقط حروف کوچک انگلیسی و
=در ورودی وجود دارد.- خروجی باید دقیقاً رشتهی اصلی باشد.
✅ این تمرین را در ویرایشگر خود پیادهسازی کنید و با ورودیهای مختلف تست کنید.
نمونهها
sall=am
salam
testtwoo===wo
testtwo
====testtwoo===wo
testtwo
برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.
ورود