Re: [閒聊] 每日LeetCode已回收
https://leetcode.com/problems/find-players-with-zero-or-one-losses
2225. Find Players With Zero or One Losses
給你一個二維陣列matches[][],matches[i] = {wini, loseri} 表示第i場比賽
wini打贏了loseri,返回一個二維列表,第一個列表為沒輸過的玩家,第二個列表
為只輸一場的玩家,列表中的id升序排列。
思路:
1.統計所有玩家的敗場數,把敗場為0和敗場為1的抓出來即可,可以用HashMap
或是int[]計數並排除掉沒出現的id。
Java Code:
--------------------------------------------------
class Solution {
public List<List<Integer>> findWinners(int[][] matches) {
int[] losses = new int[100001];
for (int[] match : matches) {
int win = match[0];
int loss = match[1];
if (losses[win] == 0) {
losses[win] = -1;
}
if (losses[loss] == -1) {
losses[loss] = 1;
} else {
losses[loss]++;
}
}
List<List<Integer>> res = new ArrayList<>();
res.add(new ArrayList<>());
res.add(new ArrayList<>());
for (int i = 0; i < losses.length; i++) {
if (losses[i] == -1) {
res.get(0).add(i);
} else if (losses[i] == 1) {
res.get(1).add(i);
}
}
return res;
}
}
--------------------------------------------------
--
https://i.imgur.com/yKab80m.jpg

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.73.13 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1705295339.A.324.html
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 604 之 719 篇):