# Lời giải (C++)
## Chỉ nên tham khảo
### Hướng giải
- Nhận thấy theo bài, ta tóm gọn bài thành biểu thức sau:
+ Tìm cặp l, r (l <= r) sao cho $\frac{A_l + A_{l+1} + A_{l+2} + \dots + A_r}{r - l + 1} = k (1)$
- Ở tử ta nhận thấy đó chính là tổng từ l ==> r trong mảng, áp dụng công thức của mảng cộng dồn tổng (prefix sum). Từ đó ta có
+ $A[l...r] = A_l + A_{l+1} + A_{l+2} + \dots + A_r$
<=> $A[l...r] = pre[r] - pre[l-1]$
Thay vào (1) => $\frac{pre[r] - pre[l-1]}{r - l + 1} = k (1)$
Vậy bài toán thành **tìm cặp l,r (l <= r) sao cho $\text{pre}[r] - k \cdot r = \text{pre}[l-1] - l \cdot k + k$**
Áp dụng mảng đếm để tính cặp phù hợp
```cpp
int res = 0; # Khởi tạo biến đáp án
for(int r = 1; r <= n; r++)
{
// Áp dụng công thức lùa bò, vì l <= r nên ta sẽ cập nhập l trước và cộng r
cnt[pre[r-1] - k*(r-1)]++;
res += cnt[pre[r] - k*r];
}
```