432A. Choosing Teams
萨拉托夫国立大学奥林匹克程序员培训中心(SSU OPTC)有 n 名学生。你知道每个学生参加 ACM ICPC 世界编程锦标赛的次数。根据 ACM ICPC 的规定,每个人最多可以参加 5 次世界锦标赛。
SSU OPTC 的负责人最近正在召集参加世界锦标赛的队伍。每支队伍必须正好由三人组成,任何人都不能同时参加两支或两支以上的队伍。如果团长希望每支队伍都由相同的成员参加世界锦标赛至少 k 次,他最多可以组建多少支队伍?
输入
第一行包含两个整数 n 和 k 。 (1 ≤ n ≤ 2000; 1 ≤ k ≤ 5) .下一行包含 n 个整数: y1, y2, …, y**n 、 (0 ≤ y**i ≤ 5) 、 n 、 n 。 (0 ≤ y**i ≤ 5) ,其中 y**i 表示第 i 位选手参加 ACM ICPC 世界锦标赛的次数。
输出
打印一个数字–问题的答案。
例如
输入
5 2
0 4 5 1 0
输出
1
输入
6 4
0 1 2 3 4 5
输出
0
输入
6 5
0 0 0 0 0 0
输出
2
注
在第一个样本中,只能组成一个小组:第一、第四和第五个参与者。
在第二个样本中,无法创建任何小组。
在第三个样本中,可以创建两个小组。任何分为两个小组的划分都是合适的。
解决方法
// CODEFORCES
// 432A. Choosing Teams
# include<iostream>
using namespace std;
int main()
{
int n, k, t=0; // t统计满足可以参加k次的人数
cin >> n >> k;
int a[n];
for(int i = 0; i < n; i++)
{
cin >> a[i];
if((5 - a[i]) >= k) t++;
}
cout << t/3 << endl;
return 0;
}