题目解析
求n个人中m个技能都会的同学有几个?
解题思路
可以先计算出,每种技能会的人数。
那么 所有人m个技能都会的人数 - 已知技能会的人数 = 会m种及以下的人数
再 总人数 - 会m种及以下的人数 = 全会的人数
但是可能会出现 会m种及以下的人数 大于 总人数, 如果出现了这种情况的话,那么全会的人数为0
比如:
50 4
1 1 1 1
代码
import java.io.*;
import java.util.*;
public class Main
{
public static void main(String[] args)
{
int n = sc.nextInt();
int m = sc.nextInt();
int ans = 0; // 技能会的人数
for (int i = 1; i <= m; i++)
{
int x = sc.nextInt();
ans += x;
}
int res = n * m - ans; // m种都会 - 技能会的人数 = 只会m种及以下的人数
out.println(Math.max(0, n - res));
out.flush();
out.close();
}
static Scanner sc = new Scanner(System.in);
static PrintWriter out = new PrintWriter(System.out);
}