Trung vị

Cho mảng \(a\) gồm \(n\) số nguyên dương \(a_1, a_2, ..., a_n\) và số nguyên dương \(M\). Một đoạn con liên tiếp của mảng \(a\) là một dãy gồm các phần tử liên tiếp có dạng: \(a_i, a_{i+1}, ..., a_j\) (\(1 \le i \le j \le n\)), độ dài là \(j - i + 1\).

Trung vị của một đoạn con liên tiếp \(b\) có độ dài \(k\) được định nghĩa như sau:

  1. Sắp xếp các phần tử của \(b\) theo thứ tự không giảm.
  2. Khi đó:
    • Nếu \(k\) lẻ: Trung vị là phần tử ở vị trí \((k+1)/2\).
    • Nếu \(k\) chẵn: Trung vị là phần tử ở vị trí \(k/2\).

Yêu cầu: Hãy đếm số lượng đoạn con liên tiếp của mảng \(a\) có trung vị bằng \(M\).

Dữ liệu vào

  • Dòng thứ nhất chứa hai số nguyên dương \(n, M\) (\(1 \le M < n \le 10^6\)).
  • Dòng thứ hai chứa \(n\) số nguyên dương \(a_1, a_2, ..., a_n\) (\(a_i \le 10^6\); \(1 \le i \le n\)).

Dữ liệu ra

  • Ghi ra một số nguyên duy nhất là kết quả của bài toán.

Ràng buộc

  • Có 40% số test ứng với 40% số điểm của bài thỏa mãn: \(n \le 10^2\).
  • Có 30% số test khác ứng với 30% số điểm của bài thỏa mãn: \(10^2 < n \le 5 \cdot 10^3\).
  • 30% số test còn lại ứng với 30% số điểm của bài không có ràng buộc gì thêm.

Ví dụ

Input

5 2
2 1 3 4 5

Output

3

Giải thích
Các đoạn con liên tiếp có trung vị bằng \(2\) là:

  • 2
  • 2 1 3
  • 2 1 3 4
...Xem thêm

Max to the Right of Min

Cho một hoán vị \(p\) gồm \(n\) số nguyên từ \(1\) đến \(n\). Một hoán vị là một dãy gồm \(n\) số nguyên phân biệt từ \(1\) đến \(n\) theo một thứ tự bất kỳ.

Một dãy con liên tiếp (subarray) của hoán vị \(p\), ký hiệu là \(p[l..r]\) (với \(1 \le l \le r \le n\)), được gọi là hợp lệ nếu vị trí của phần tử lớn nhất trong dãy con đó nằm bên phải vị trí của phần tử nhỏ nhất trong dãy con đó.

Hãy đếm số lượng dãy con liên tiếp \(p[l..r]\) hợp lệ trong hoán vị \(p\).

Dữ liệu vào

  • Dòng đầu tiên chứa một số nguyên \(n\) (\(1 \le n \le 10^6\)) — độ dài của hoán vị.
  • Dòng thứ hai chứa \(n\) số nguyên \(p_1\), \(p_2\), \(\dots\), \(p_n\) (\(1 \le p_i \le n\)) — các phần tử của hoán vị \(p\). Tất cả các \(p_i\) đôi một khác nhau.

Dữ liệu ra

In ra một số nguyên duy nhất — số lượng dãy con liên tiếp hợp lệ của hoán vị \(p\).

Ví dụ

Input Output
Input 1
3
1 2 3
3
Input 2
6
5 3 6 1 4 2
4
Input 3
10
5 1 6 2 8 3 4 10 9 7
38

Giải thích ví dụ

  • Ví dụ 1: Các dãy con hợp lệ là \([1\), \(2]\) (min ở \(1\), max ở \(2\)), \([2, 3]\) (min ở \(2\), max ở \(3\)), và \([1, 2, 3]\) (min ở \(1\), max ở \(3\)). Các dãy con có \(l = r\) không hợp lệ vì vị trí max và min trùng nhau.
...Xem thêm

Số đặc biệt

Một số nguyên dương \(K\) được gọi là số đặc biệt nếu số \(K^2 - 1\) chia hết cho \(5\).
Ví dụ:

  • \(4\) là số đặc biệt vì \(4^2 - 1 = 15\) chia hết cho \(5\);
  • \(7\) không phải là số đặc biệt vì \(7^2 - 1 = 48\) không chia hết cho \(5\).

Yêu cầu: Cho 2 số nguyên dương \(L, R\) (\(2 \le L \le R \le 10^{18}\)); hãy đếm các số đặc biệt trên đoạn \([L, R]\).

Dữ liệu: Gồm một dòng chứa hai số nguyên dương \(L, R\).

Kết quả: Ghi ra một số duy nhất là kết quả của bài toán.

Ví dụ:

stdin stdout
2 8 2

Ràng buộc:

  • Có 80% số điểm có \(2 \le L \le R \le 10^6\);
  • 20% số điểm còn lại không có ràng buộc gì thêm.
...Xem thêm

Ước chung lớn nhất

Cho mảng \(A\) gồm \(n\) phần tử. Tìm giá trị lớn nhất của \(UCLN(A_i, A_j)\) với \(1 \le i < j \le n\).

Input

  • Dòng đầu tiên gồm số nguyên \(n\).
  • Dòng tiếp theo gồm \(n\) số nguyên \(A_i\).

Output

  • In ra giá trị lớn nhất của \(UCLN(A_i, A_j)\).

Điều kiện

  • \(2 \le n \le 10^5\).
  • \(1 \le A_i \le 2 \times 10^6\).

Ví dụ:

stdin stdout
4
3 6 5 2
3
...Xem thêm