Ba số có tổng cho trước
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
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python
Cho một dãy gồm ~n~ số nguyên và số nguyên ~S~. Hãy đếm số bộ ba chỉ số ~(i, j, k)~ với ~i < j < k~ sao cho ~a_i + a_j + a_k = S~.
Dữ liệu vào
Dòng đầu tiên chứa hai số nguyên ~n, S~ (~3 \le n \le 200~, ~|S| \le 3 \times 10^9~).
Dòng thứ hai chứa ~n~ số nguyên ~a_1, \dots, a_n~ (~|a_i| \le 10^9~).
Kết quả
In ra số bộ ba thỏa mãn.
Ví dụ
Ví dụ 1
Input:
5 6
1 2 3 4 5
Output:
1
Ví dụ 2
Input:
3 100
1 2 3
Output:
0
Giải thích
Với 1 2 3 4 5 và ~S = 6~ chỉ có bộ ba ~(1, 2, 3)~, đáp án là ~1~. Ba vòng lặp lồng nhau chạy khoảng ~\binom{200}{3} \approx 1.3 \times 10^6~ lần nên đủ nhanh.
Đang tải...