LeetCode 1996. 游戏中弱角色的数量
1996. 游戏中弱角色的数量
Solution
思路:见过类似的,就知道是排序。需要满足都是小于,才算是一个弱角色。因此可以按照攻击降序排序,那么就保证了攻击是满足了,不过要实现防御也要小于,就需要攻击相同时,按照防御升序排列,如果出现当前防御比之前角色小的,那么一定是攻击值不一样且之前的更大的角色。
class Solution {
public int numberOfWeakCharacters(int[][] properties) {
Arrays.sort(properties, (o1, o2) -> {
return o1[0] == o2[0] ? o1[1] - o2[1] : o2[0] - o1[0];
});
int maxDef = 0;
int ans = 0;
for (int[] p : properties) {
if (p[1] < maxDef) {
ans++;
} else {
maxDef = p[1];
}
}
return ans;
}
}
埋骨何须桑梓地,人生无处不青山