Chứng khoán

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Người đăng:
Dạng bài
Ngôn ngữ cho phép
C++, Pascal, Python

An làm việc ở một công ty tư vấn đầu tư chứng khoán. Nhiệm vụ của An là phân tích sự dao động chỉ số chứng khoán hàng ngày của sàn giao dịch, từ đó có thể đưa ra các thông tin hữu ích để tư vấn cho các nhà đầu tư. An nhận được dãy số nguyên dương ~A~ trong đó ~A_i~ là chỉ số chứng khoán của ngày thứ ~i~ và phải tìm một số ngày liên tiếp dài nhất sao cho chênh lệch chỉ số chứng khoán giữa hai ngày bất kỳ trong đó không vượt quá ~d~.

Ví dụ, với dãy chỉ số chứng khoán trong 6 ngày liên tiếp lần lượt là: ~10, 12, 34, 40, 30, 41~ và ~d = 10~ thì dãy chỉ số chứng khoán liên tiếp ~10, 12~ có chênh lệch chỉ số chứng khoán giữa hai ngày bất kỳ trong dãy không quá 10, nhưng dãy chỉ số chứng khoán liên tiếp ~34, 40, 30~ mới là dãy liên tiếp dài nhất.

Yêu cầu: Cho ~d~ và dãy các chỉ số chứng khoán ~A~. Hãy đưa ra số lượng ngày liên tiếp dài nhất sao cho chênh lệch chỉ số chứng khoán giữa hai ngày bất kỳ trong đó không vượt quá ~d~.

INPUT

Dòng đầu tiên chứa hai số nguyên ~n~ và ~d~ (~1 \le n \le 10^5~, ~0 \le d \le 100~).

Dòng thứ hai chứa ~n~ số nguyên dương là các chỉ số chứng khoán của lần lượt các ngày từ ~1~ đến ~n~.

OUTPUT

Gồm một số nguyên là số lượng ngày liên tiếp dài nhất thỏa mãn các điều kiện đã nêu, nếu không tồn tại hai ngày liên tiếp mà chênh lệch chỉ số chứng khoán không vượt quá ~d~ thì ghi số ~1~.

SAMPLE INPUT 1

6 10
10 12 34 40 30 41

SAMPLE OUTPUT 1

3

Giải thích: Dãy ~34, 40, 30~ độ dài ~3~ là dãy dài nhất thỏa mãn chênh lệch các phần tử không quá ~10~

SAMPLE INPUT 2

5 9
10 20 30 20 9

SAMPLE OUTPUT 2

1

Giải thích: Không có dãy con liên tiếp nào có độ dài lớn hơn 1 có chênh lệch không vượt quá 9.

SCORING

60% số test ứng với 60% số điểm của bài toán có ~n \le 1000~