This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
from bisect import *
n,x = map(int, input().split())
arr = list(map(int, input().split()))
def LIS(lis):
dp = []
for i in lis:
sus = bisect_left(dp,i)
if sus==len(dp):
dp.append(i)
else:
dp[sus] = i
return len(dp)
ans = LIS(arr)
for i in range(len(arr)):
arr[i] -= x
ans = max(ans, LIS(arr))
print(ans)
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |