From 23b2130f0af9a98b2291e8ac75c385a505a28a01 Mon Sep 17 00:00:00 2001 From: 0xff-dev Date: Wed, 23 Oct 2024 09:27:33 +0800 Subject: [PATCH] Add solution and test-cases for problem 1222 --- .../1.jpg | Bin 0 -> 53274 bytes .../2.jpg | Bin 0 -> 54813 bytes .../README.md | 31 ++++---- .../Solution.go | 66 +++++++++++++++++- .../Solution_test.go | 20 +++--- 5 files changed, 91 insertions(+), 26 deletions(-) create mode 100644 leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/1.jpg create mode 100644 leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/2.jpg diff --git a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/1.jpg b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2ccf1ca2f42266e24263251ef8cb719a0b8dbe6f GIT binary patch literal 53274 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 literal 0 HcmV?d00001 diff --git a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/2.jpg b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..555154016850291a3bed58aa05bf413587f2b25a GIT binary patch literal 54813 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 [!WARNING|style:flat] -> This question is temporarily unanswered if you have good ideas. Welcome to [Create Pull Request PR](https://github.com/kylesliu/awesome-golang-algorithm) - ## Description +On a **0-indexed** `8 x 8` chessboard, there can be multiple black queens and one white king. + +You are given a 2D integer array `queens` where `queens[i] = [xQueeni, yQueeni]` represents the position of the `ith` black queen on the chessboard. You are also given an integer array `king` of length `2` where `king = [xKing, yKing]` represents the position of the white king. + +Return the coordinates of the black queens that can directly attack the king. You may return the answer in **any order**. -**Example 1:** +**Example 1:** + +![1](./1.jpg) ``` -Input: a = "11", b = "1" -Output: "100" +Input: queens = [[0,1],[1,0],[4,0],[0,4],[3,3],[2,4]], king = [0,0] +Output: [[0,1],[1,0],[3,3]] +Explanation: The diagram above shows the three queens that can directly attack the king and the three queens that cannot attack the king (i.e., marked with red dashes). ``` -## 题意 -> ... +**Example 2:** -## 题解 +![2](./2.jpg) -### 思路1 -> ... -Queens That Can Attack the King -```go ``` - +Input: queens = [[0,0],[1,1],[2,2],[3,4],[3,5],[4,4],[4,5]], king = [3,3] +Output: [[2,2],[3,4],[4,4]] +Explanation: The diagram above shows the three queens that can directly attack the king and the three queens that cannot attack the king (i.e., marked with red dashes). +``` ## 结语 diff --git a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution.go b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution.go index d115ccf5e..89a66bd80 100644 --- a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution.go +++ b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution.go @@ -1,5 +1,67 @@ package Solution -func Solution(x bool) bool { - return x +func Solution(queens [][]int, king []int) [][]int { + ans := make([][]int, 0) + board := [8][8]int{} + for _, q := range queens { + board[q[0]][q[1]] = 1 + } + x, y := king[0], king[1] + for r := y - 1; r >= 0; r-- { + if board[x][r] == 1 { + ans = append(ans, []int{x, r}) + break + } + } + for r := y + 1; r < 8; r++ { + if board[x][r] == 1 { + ans = append(ans, []int{x, r}) + break + } + } + + for r := x - 1; r >= 0; r-- { + if board[r][y] == 1 { + ans = append(ans, []int{r, y}) + break + } + } + + for r := x + 1; r < 8; r++ { + if board[r][y] == 1 { + ans = append(ans, []int{r, y}) + break + } + } + + // 对 + for l, r := x-1, y-1; l >= 0 && r >= 0; l, r = l-1, r-1 { + if board[l][r] == 1 { + ans = append(ans, []int{l, r}) + break + } + } + + for l, r := x-1, y+1; l >= 0 && r < 8; l, r = l-1, r+1 { + if board[l][r] == 1 { + ans = append(ans, []int{l, r}) + break + } + } + + for l, r := x+1, y+1; l < 8 && r < 8; l, r = l+1, r+1 { + if board[l][r] == 1 { + ans = append(ans, []int{l, r}) + break + } + } + + for l, r := x+1, y-1; l < 8 && r >= 0; l, r = l+1, r-1 { + if board[l][r] == 1 { + ans = append(ans, []int{l, r}) + break + } + } + + return ans } diff --git a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution_test.go b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution_test.go index 14ff50eb4..8336d57b4 100644 --- a/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution_test.go +++ b/leetcode/1201-1300/1222.Queens-That-Can-Attack-the-King/Solution_test.go @@ -10,30 +10,30 @@ func TestSolution(t *testing.T) { // 测试用例 cases := []struct { name string - inputs bool - expect bool + queens [][]int + king []int + expect [][]int }{ - {"TestCase", true, true}, - {"TestCase", true, true}, - {"TestCase", false, false}, + {"TestCase1", [][]int{{0, 1}, {1, 0}, {4, 0}, {0, 4}, {3, 3}, {2, 4}}, []int{0, 0}, [][]int{{0, 1}, {1, 0}, {3, 3}}}, + {"TestCase2", [][]int{{0, 0}, {1, 1}, {2, 2}, {3, 4}, {3, 5}, {4, 4}, {4, 5}}, []int{3, 3}, [][]int{{3, 4}, {2, 2}, {4, 4}}}, } // 开始测试 for i, c := range cases { t.Run(c.name+" "+strconv.Itoa(i), func(t *testing.T) { - got := Solution(c.inputs) + got := Solution(c.queens, c.king) if !reflect.DeepEqual(got, c.expect) { - t.Fatalf("expected: %v, but got: %v, with inputs: %v", - c.expect, got, c.inputs) + t.Fatalf("expected: %v, but got: %v, with inputs: %v %v", + c.expect, got, c.queens, c.king) } }) } } -// 压力测试 +// 压力测试 func BenchmarkSolution(b *testing.B) { } -// 使用案列 +// 使用案列 func ExampleSolution() { }