.لینک‌های مفید برای شرکت در مسابقه:

می‌توانید سوال‌های خود را از بخش "سوال بپرسید" مطرح کنید.

توجه کنید که سوال چهارم جنبه الگوریتمی، سوال پنجم جنبه پیاده‌سازی و سوال ششم جنبه چالشی دارد؛ پیشنهاد می‌کنیم بعد از حل سه سوال اول، طبق مهارت‌های خود، به‌ترتیب سراغ حل سوالات مد نظر خود بروید.

حساب بی‌حساب


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

بانک مانی بسیار عجیب است، به‌طوری‌که هیچگاه به مشتریانش موجودی حسابشان را نمی‌گوید و تنها لیستی از تراکنش‌ها به آن‌ها می‌دهد. مانی که موجودی اولیه حساب خودش را فراموش کرده، به بانک می‌رود و لیست تراکنش‌های خود را دریافت می‌کند. هر تراکنش به یکی از صورت‌های زیر است:

  • به حساب مانی پول ریخته شده است، به این معنی است که در ساعت HH:MM موجودی حساب مانی xx تومان افزایش یافته است:
    DEP x HH:MM
    Plain text
  • مانی از حسابش پول دریافت کرده اما موجودی کافی نبوده است، به این معنی است که در ساعت HH:MM مانی قصد کرده xx تومان از حسابش بردارد. اما موجودی حسابش کافی نبوده و تراکنش انجام نشده است:
    WIT x HH:MM FAIL
    Plain text
  • مانی از حسابش پول دریافت کرده و موجودی کافی بوده است، به این معنی است که در ساعت HH:MM مانی xx تومان از حسابش برداشت کرده و موجودی حسابش xx تومان کاهش یافته است:
    WIT x HH:MM OK
    Plain text

به او کمک کنید حداقل موجودی اولیه‌ی حسابش را بیابد. دقت کنید همه‌ی ساعت‌های داده شده برای یک روز هستند و شما باید حداقل موجودی اولیه حساب مانی را در ابتدای روز بدست آورید.

ورودی🔗

در خط اول ورودی عدد nn آمده که نشان‌دهنده‌ی تعداد تراکنش‌ها است. 1n1001 \le n \le 100 در هر خط از nn خط بعدی یک تراکنش آمده که به صورت یکی از ۳ حالت توضیح داده شده در صورت سوال است. 1x20001 \le x \le 2000 00HH2300 \le HH \le 23 00MM5900 \le MM \le 59 توجه کنید زمان تراکنش‌ها لزوما به ترتیب نیست.

تضمین می‌شود هیچ دو تراکنشی در یک زمان انجام نمی‌گیرند.

خروجی🔗

در تنها خط خروجی حداقل موجودی اولیه حساب مانی را چاپ کنید. همچنین اگر لیست تراکنش‌های داده شده معتبر نبود عبارت DOROGHE را چاپ کنید.

مثال🔗

ورودی نمونه ۱🔗

3
DEP 100 08:57
WIT 500 18:00 FAIL
WIT 150 13:23 OK
Plain text

خروجی نمونه ۱🔗

50
Plain text

در این‌صورت می‌توان ثابت کرد مانی در ابتدا حداقل ۵۰ تومان در حسابش داشته است و موجودی اولیه‌ای کمتر از این مقدار ممکن نیست.

ورودی نمونه ۲🔗

5
DEP 100 08:57
WIT 250 18:00 OK
WIT 150 13:23 OK
DEP 1000 18:01
WIT 600 20:07 OK
Plain text

خروجی نمونه ۲🔗

300
Plain text

در این‌صورت می‌توان ثابت کرد مانی در ابتدا حداقل ۳۰۰ تومان در حسابش داشته است.

ورودی نمونه ۳🔗

8
DEP 210 00:07
WIT 170 03:23 OK
WIT 130 10:00 OK
DEP 1000 12:00
WIT 600 16:30 OK
WIT 1400 18:00 FAIL
DEP 100 19:00
WIT 800 19:45 OK
Plain text

خروجی نمونه ۳🔗

390
Plain text

در این‌صورت می‌توان ثابت کرد مانی در ابتدا حداقل ۳۹۰ تومان در حسابش داشته است.

ورودی نمونه ۴🔗

2
DEP 100 12:00
WIT 50 13:00 OK
Plain text

خروجی نمونه ۴🔗

0
Plain text

در این مثال حساب مانی می‌تواند در ابتدا خالی باشد.

ورودی نمونه ۵🔗

2
WIT 100 10:08 FAIL
DEP 200 09:00
Plain text

خروجی نمونه ۵🔗

DOROGHE
Plain text

در ساعت 09:00 ۲۰۰ تومان به حساب مانی ریخته شده است و سپس در ساعت 10:08، موجودی او برای برداشت ۱۰۰ تومان کافی نبوده که تناقض است. زیرا در ساعت 10:08 حداقل ۲۰۰ تومان در حسابش وجود داشته و ۱۰۰ تومان قابل برداشت بوده است.

ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.