اولین زمان رسیدن قورباغه به سمت دیگر رودخانه
قورباغهٔ کوچک تمرین اول در ابتدا در یک انتهای رودخانه یا مکان ۰ قرار دارد و اینبار میخواهد خود را به طرف دیگر یعنی مکان x+1 برساند. همچنین برگهایی از بالا در حال افتادن روی سطح آب رودخانه هستند. قورباغه فقط زمانی میتواند از روی برگها عبور کند که برگها تمام مسیر نقطهٔ ۱ تا x رودخانه را پوشانده باشند. در ورودی برنامه یک لیست با نام A بهطول N دارید که هر عضو آن نمایندهٔ یکی از برگهای در حال افتادن است. A[K] بیانگر مکان رودخانه که برگ روی آن میافتد و K بیانگر زمانی است که برگ در آن مکان میافتد و واحد آن ثانیه است. هدف این است که زودترین زمانی که قورباغه میتواند به سمت دیگر رودخانه بپرد را حساب کنیم یا به عبارت دیگر اولین زمانی را میخواهیم که از نقطهٔ ۱ تا X رودخانه با برگ پوشیده شدهاست. اگر در هیچ زمانی کل رودخانه پوشیده نشد عدد منفی یک را برگردانید. از حرکت آب رودخانه و امکان جابجایی برگهای روی آن هم صرف نظر کنید.
ورودیها
نام ورودی | نوع ورودی | توضیح |
---|---|---|
a | list | یک لیست ناخالی شامل اعداد integer که بیانگر مکانهای افتادن برگها هستند و indexهای این لیست بیانگر زمان افتادن برگها هست |
x | integer | طول رودخانه |
خروجی
یک عدد integer که بیانگر اولین زمانی که نقطهٔ 1 تا X رودخانه با برگ پوشیده شده است و در نتیجه قورباغه میتواند به سمت دیگر رودخانه برسد.
تستکیسها
ورودی نمونه | خروجی نمونه |
---|---|
{'a': [1, 3, 1, 4, 2, 3, 5, 4], 'x': 5} | 6 |
{'a': [1, 2, 3], 'x': 5} | -1 |