AT4573 Contests
跟同机房的抢题解啦!
简略题意
给定 和序列 ,定义 ,求 为多少。
解法
对每个 进行统计并处理即可。
代码:
#include <bits/stdc++.h>
using namespace std;
int cnt[5], n, a, b;
int main()
{
scanf("%d %d %d", &n, &a, &b);
for (int i = 1; i <= n; i++)
{
int x;
scanf("%d", &x);
cnt[1] += (x <= a);
cnt[2] += (x > a && x <= b);
cnt[3] += (x >= b + 1);
}
printf("%d\n", min({ cnt[1], cnt[2], cnt[3] }));
return 0;
}
补充一个知识,很多人不知道,C++11 中可以使用 min({a, b, c, ……})
获取多个值的最小值,max
同理。