我的問題是產生隨機玩家對數量相同的遊戲,但限制遊戲的數量,以便所有玩家不必互相玩耍。Java產生隨機玩家對
把它想象成一個象棋遊戲,其中隨機玩家被設置爲遊戲,但每個玩家都不必與所有玩家一起玩(這將花費太多時間),但它們都必須具有相同的數字的遊戲競爭是公平的。
到目前爲止,我爲遊戲生成了一對獨特的對,但所有玩家都必須扮演每個人,這需要太多時間。 我知道,代碼是不漂亮,但它必須運行每月一次,以產生對:
@RequestMapping("/voistlus/{id}")
public String newGame(Model model, @PathVariable Long id) {
Stage stage = stageService.findOneById(id);
if (gameService.findByStage(stage).isEmpty()) {
List<Paar> paars = paarService.getAllPaar();
List<Game> pairs = new ArrayList<Game>();
for (Paar one : paars) {
for (Paar two : paars) {
if (!one.equals(two)) {
Game newPair = new Game();
newPair.setPaar1(one);
newPair.setPaar2(two);
if (!pairs.contains(newPair)) {
if (pairs.isEmpty()) {
pairs.add(newPair);
newPair.setStage(stage);
gameService.save(newPair);
} else {
boolean exists = false;
for (Game game : pairs) {
if (game.getPaar1().equals(two) && game.getPaar2().equals(one)) {
exists = true;
}
}
if (!exists) {
pairs.add(newPair);
newPair.setStage(stage);
gameService.save(newPair);
}
}
}
}
}
}
}
model.addAttribute("pairs", gameService.findByStage(stage));
return "newGame";
}
什麼是'舞臺'? –
舞臺是比賽的一部分 – 2201