Vòng tay

Lê có \(n\) hạt cườm, hạt thứ \(i\) (\(1 \le i \le n\)) có mã màu là \(c_i\). Lê muốn chọn ra đúng \(m\) (\(m < n\)) hạt để làm một vòng tay. Vì rất yêu thích số \(s\) nên Lê muốn đếm xem có bao nhiêu cách chọn \(m\) hạt mà tổng giá trị các mã màu đúng bằng \(s\). Hai cách được gọi là khác nhau nếu tồn tại một hạt được chọn trong cách này nhưng không thuộc trong cách kia.

Yêu cầu: Cho các số nguyên dương \(c_1,c_2,...,c_n\) là mã màu của \(n\) hạt cườm và hai số nguyên dương \(m,s\), hãy đếm số cách chọn \(m\) hạt để tổng giá trị các mã màu của các hạt được chọn bằng \(s\).

Input

  • Dòng đầu tiên gồm ba số nguyên \(n,m,s\).
  • Dòng thứ hai chứa \(n\) số nguyên dương \(c_1,c_2,...,c_n\) (\(1 \le c_i \le 10^9\)).

Output

  • Một dòng chứa một số nguyên là số cách chọn thỏa mãn.

Scoring

  • Subtask \(1\) (\(30\%\) số điểm): \(m = n-1, n \le 18\).
  • Subtask \(2\) (\(40\%\) số điểm): \(n \le 18\).
  • Subtask \(3\) (\(30\%\) số điểm): \(n \le 36\).

Example

Test 1
Input
5 4 10
2 2 3 2 3
Output
3
...Xem thêm

Điểm đại diện

Cho \(n\) đoạn thẳng trên trục Ox, đoạn thứ \(i\) (ký hiệu là \(T_i\)) bắt đầu tại điểm \(x_i\) và có độ dài \(l_i\). Ở mỗi đoạn ta cần chọn ra một điểm đại diện của đoạn đó. Biết rằng không có hai đoạn nào hoàn toàn chứa nhau (nói cách khác, không tồn tại \(i\)\(j\) khác nhau sau cho \(x_j\leq x_i\)\(x_i+l_i\leq x_j+l_j\)), bạn hãy lập trình xác định một cách chọn \(n\) điểm đại diện sao cho khoảng cách giữa hai điểm gần nhất là lớn nhất có thể.

Ví dụ, hai hình dưới đây thể hiện hai cách chọn điểm đại diện cho \(6\) đoạn thẳng (điểm đại diện được tô đậm màu đen ở mỗi đoạn màu đỏ). Ở cách chọn đầu tiên, hai điểm gần nhất cách nhau \(20\) đơn vị độ dài. Ở cách chọn thứ nhì, hai điểm gần nhất cách nhau \(25\) đơn vị độ dài.

Input

  • Dòng đầu tiên chứa số nguyên dương \(n\) (\(2\leq n\leq 10^5\)).

  • Dòng thứ \(i\) trong \(n\) dòng tiếp theo chứa hai số nguyên \(x_i\)\(l_i\) (\(0\leq x_i\leq 10^9\), \(1\leq l_i\leq 10^9\)).

Example

Test 1

Input
6
0 67
127 36
110 23
50 51
100 12
158 17
Output
25

Test 2

Input
6
0 40
10 55
45 28
90 40
83 30
120 30
Output
30

Test 3

Input
3
0 20
40 10
100 20
Output
50
...Xem thêm

CSES - Trailing Zeros | Số không ở cuối

Nhiệm vụ của bạn là đếm số lượng chữ số \(0\) ở cuối trong \(n\)\(!\).

Ví dụ: \(20! = 2432902008176640000\) và nó có \(4\) chữ số không ở cuối

Input

  • Chỉ một dòng duy nhất chứa một số nguyên \(n\).

Output

  • In ra số lượng chữ số không ở cuối của \(n!\).

Constraints

  • \(1 \leq n \leq 10^9\)

Example

Sample input

20

Sample output

4
...Xem thêm

Chẵn lẻ

Kiểm tra số \(n\) là số chẵn hay số lẻ.

Input

  • Một dòng duy nhất chứa số \(n\) \((0 \leq n \leq 10^5)\).

Output

  • Một dòng duy nhất in ra 1 nếu \(n\) chẵn hoặc in ra 0 nếu \(n\) lẻ.

Example

Test 1
Input
9
Output
0
Test 2
Input
100
Output
1
...Xem thêm