Lazy Math Instructor
یک معلم ریاضی که خیلی تنبل است نمیخواهد یکی از سوالهای امتحان را که دانشآموزان در آن باید یک فرمول پیچیده را محاسبه کنند تصحیح کند. دانش آموزان ممکن است جواب را به صورت فرمولهای مختلف بنویسند که کار تصحیح را خیلی سخت میکند. بنابراین، معلم از برنامه نویسان درخواست کمک میکند.
شما باید یک برنامه بنویسید که تعدادی فرمول ببیند و بهدست آورد که آیا آنها با هم برابرند یا نه.
ورودی
خط اول ورودی شامل عدد طبیعی $ (1\le N \le 20 ) N $ که تعداد تستهااست. بعد از خط اول، برای هر تست دو خط وجود دارد. هر تست شامل دو عبارت ریاضی است که هر کدام در یک خط مجزا با حداکثر 80 کلمه است. هیچ خط خالی در ورودی نیست. هر عبارت یک یا چند مورد زیر را دارد:
- متغیرهای یک حرفی (حروف کوچک و بزرگ یکسان تلقی میشوند.)
- اعداد یک رقمی
- بسته و باز پرانتز ریاضی
- اعمال اصلی ریاضی شامل + ،- ،* که به ترتیب جمع و منها و ضرب است.
- تعدادی اتفاقی فاصله و tab بین موارد بالا.
توجه: عبارتها از نظر ریاضی درست هستند و در هر پرانتز اولویتها یکسان هستند. اعداد و حاصل آنها در 16- بیت جا میشوند.
خروجی
برنامهی شما به ازای هر تست باید یک خط چاپ کند. اگر عبارتهای یک تست یکسان بودند، YES و در غیر اینصورت باید به عنوان خروجی برنامه شما NO بدهد. در تمام خروجی با ید از حروف بزرگ استفاده شده باشد.
محدودیتها
- محدودیت زمان: ۱۰ ثانیه
- محدودیت حافظه: ۲۵۶ مگابایت
ورودی و خروجی نمونه
| ورودی نمونه | خروجی نمونه |
|---|---|
| 3 (a+b-c)*2 (a+a)+(b*2)-(3*c)+c a*2-(a+c)+( (a+c+e)*2) 3*a+c+(2*e) (a-b)*(a-b) (a*a)-(2*a*b)-(b*b) | YES YES NO |
پاسخ
منتظر پر کردن این قسمت توسط علاقمندان هستیم.