1
class Solution {
2
public List<List<Integer>> queensAttacktheKing(int[][] queens, int[] king) {
3
List<List<Integer>> res = new ArrayList<>();
4
int r = king[0];
5
int l = king[1];
6
int[][] board = new int[8][8];
7
int n = 8;
8

9
// 8 cases;
10
// moving upward
11
// moving downward
12
// moving right
13
// moving left
14
// moving upper right diagonal
15
// moving upper left diagonal'
16
// moving lower left diagonal
17
// moving lower right diagonal
18

19
int i, j;
20
for (i = 0; i < queens.length; i++) {
21
for (j = 0; j < 1; j++) {
22
int row = queens[i][j];
23
int column = queens[i][j + 1];
24
board[row][column] = 1;
25
}
26
}
27
// for(i=0;i<8;i++)
28
// {
29
// for(j=0;j<8;j++)
30
// {
31
// System.out.println(board[i][j]);
32
// }
33
// System.out.println();
34
// }
35
for (j = l; j < n; j++) {
36
if (board[r][j] == 1) {
37
res.add(new ArrayList<>(Arrays.asList(r, j)));
38
break;
39
}
40
}
41
for (i = r; i < n; i++) {
42
if (board[i][l] == 1) {
43
res.add(new ArrayList<>(Arrays.asList(i, l)));
44
break;
45
}
46
}
47
for (i = r; i >= 0; i--) {
48
if (board[i][l] == 1) {
49
res.add(new ArrayList<>(Arrays.asList(i, l)));
50
break;
51
}
52
}
53
for (j = l; j >= 0; j--) {
54
if (board[r][j] == 1) {
55
res.add(new ArrayList<>(Arrays.asList(r, j)));
56
break;
57
}
58
}
59
for (i = r, j = l; i >= 0 && j >= 0; j--, i--) {
60
if (board[i][j] == 1) {
61
res.add(new ArrayList<>(Arrays.asList(i, j)));
62
break;
63
}
64
}
65
for (i = r, j = l; j < n && i >= 0; j++, i--) {
66
if (board[i][j] == 1) {
67
res.add(new ArrayList<>(Arrays.asList(i, j)));
68
break;
69
}
70
}
71
for (i = r, j = l; i < n && j < n; j++, i++) {
72
if (board[i][j] == 1) {
73
res.add(new ArrayList<>(Arrays.asList(i, j)));
74
break;
75
}
76
}
77
for (i = r, j = l; j >= 0 && i < n; j--, i++) {
78
if (board[i][j] == 1) {
79
res.add(new ArrayList<>(Arrays.asList(i, j)));
80
break;
81
}
82
}
83
return res;
84
}
85
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0