-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCatAndMouse.js
More file actions
37 lines (31 loc) · 1019 Bytes
/
CatAndMouse.js
File metadata and controls
37 lines (31 loc) · 1019 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// https://leetcode-cn.com/problems/cat-and-mouse/
var Test = require('./Common/Test');
var catMouseGame = function (graph) {
let mouseMoves = new Set(graph[1]);
let catMoves = new Set(graph[2]);
// let steps = 0
let moves = mouseMoves;
let mouseTurn = true;
// while ((let moves = steps % 2 == 0 ?mouseMoves:catMoves, mouseMoves.size : catMoves.size) {
// while ((moves = steps % 2 == 0 ? mouseMoves : catMoves, moves.size)) {
while (moves.size) {
const moves2 = new Set();
if (mouseTurn) {
for (const move of moves) {
moves2.add(...graph[move]);
}
}
else {
}
mouseTurn = !mouseTurn;
}
switch (true) {
// case mouseMoves.size == 0 && catMoves == 0: return 0;
// case catMoves == 0: return 1;
// case mouseMoves.size == 0: return 2;
}
};
function run(graph) {
Test.run(catMouseGame, graph);
}
run([[2, 5], [3], [0, 4, 5], [1, 4, 5], [2, 3], [0, 2, 3]]);