1.27 A

A - 1

Time limit 1000 ms
Memory limit 262144 kB

Problem Description

The Saratov State University Olympiad Programmers Training Center (SSU OPTC) has n students. For each student you know the number of times he/she has participated in the ACM ICPC world programming championship. According to the ACM ICPC rules, each person can participate in the world championship at most 5 times.

The head of the SSU OPTC is recently gathering teams to participate in the world championship. Each team must consist of exactly three people, at that, any person cannot be a member of two or more teams. What maximum number of teams can the head make if he wants each team to participate in the world championship with the same members at least k times?

Input

The first line contains two integers, n and k (1 ≤ n ≤ 2000; 1 ≤ k ≤ 5). The next line contains n integers: y1, y2, …, yn (0 ≤ yi ≤ 5), where yi shows the number of times the i-th person participated in the ACM ICPC world championship.

Output

Print a single number — the answer to the problem.

Sample Input

5 2
0 4 5 1 0

6 4
0 1 2 3 4 5

6 5
0 0 0 0 0 0

Sample Output

1

0

2

问题链接:A - 1

问题简述:

输入n和k,分别代表有n个待选的人选,k为要进行k场比赛
接下来输入n个数代表每一位人选先前已经参加过比赛的次数
赛事规定每个人只能参加5次,且必须以三人一组的形式参加
问符合要求的组有多少组?

问题分析:

每个人只能参加5次,已知每个人参加的次数
首先先把每个人剩余能参加比赛的次数算出来(5-已参加次数)
然后拿它和k作比较,≥k就让计数器自增,最后让计数器除以3即可

程序说明:

无fuck说

AC通过的C语言程序如下:

#include <iostream>
using namespace std;

int main()
{
	int n, k;
	cin >> n >> k;
	int a[2000];
	int sum=0;
	for (int i = 0;i < n;i++)
	{
		cin >> a[i];
	}
	for (int i = 0;i < n;i++)
	{
		a[i]=5-a[i];
	}
	for (int i = 0;i < n;i++)
	{
		if (a[i]-k >= 0)
		{
			sum++;
		}
	}
	cout << sum / 3;
}

猜你喜欢

转载自blog.csdn.net/weixin_44003969/article/details/86665755