From f25d09060e1589b4cc2f24bc3d75055cc867c550 Mon Sep 17 00:00:00 2001 From: 0xff-dev Date: Thu, 26 Sep 2024 09:22:14 +0800 Subject: [PATCH] Add solution and test-cases for problem 849 --- .../1.jpg | Bin 0 -> 33127 bytes .../README.md | 43 ++++++++++++------ .../Solution.go | 29 +++++++++++- .../Solution_test.go | 14 +++--- 4 files changed, 63 insertions(+), 23 deletions(-) create mode 100644 leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/1.jpg diff --git a/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/1.jpg b/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0bd9c798da4b84f06666852972d377aefecd815a GIT binary patch literal 33127 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 TuKu [!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 +You are given an array representing a row of `seats` where `seats[i] = 1` represents a person sitting in the `ith` seat, and `seats[i] = 0` represents that the `ith` seat is empty **(0-indexed)**. + +There is at least one empty seat, and at least one person sitting. + +Alex wants to sit in the seat such that the distance between him and the closest person to him is maximized. + +Return that maximum distance to the closest person. + +**Example 1:** -**Example 1:** +![1](./1.jpg) ``` -Input: a = "11", b = "1" -Output: "100" +Input: seats = [1,0,0,0,1,0,1] +Output: 2 +Explanation: +If Alex sits in the second open seat (i.e. seats[2]), then the closest person has distance 2. +If Alex sits in any other open seat, the closest person has distance 1. +Thus, the maximum distance to the closest person is 2. ``` -## 题意 -> ... +**Example 2:** -## 题解 - -### 思路1 -> ... -Maximize Distance to Closest Person -```go ``` +Input: seats = [1,0,0,0] +Output: 3 +Explanation: +If Alex sits in the last seat (i.e. seats[3]), the closest person is 3 seats away. +This is the maximum distance possible, so the answer is 3. +``` + +**Example 3:** +``` +Input: seats = [0,1] +Output: 1 +``` ## 结语 diff --git a/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution.go b/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution.go index d115ccf5e..736a09373 100644 --- a/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution.go +++ b/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution.go @@ -1,5 +1,30 @@ package Solution -func Solution(x bool) bool { - return x +func Solution(seats []int) int { + ans := 0 + pre := -1 + i := 0 + for ; i < len(seats); i++ { + s := seats[i] + if s == 0 { + continue + } + if pre == -1 { + ans = i + } else { + diff := i - pre - 1 + add := 0 + if diff&1 == 1 { + add = 1 + } + diff = diff/2 + add + ans = max(ans, diff) + } + pre = i + } + if seats[i-1] != 1 { + diff := i - pre - 1 + ans = max(ans, diff) + } + return ans } diff --git a/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution_test.go b/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution_test.go index 14ff50eb4..31274cd59 100644 --- a/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution_test.go +++ b/leetcode/801-900/0849.Maximize-Distance-to-Closest-Person/Solution_test.go @@ -10,12 +10,12 @@ func TestSolution(t *testing.T) { // 测试用例 cases := []struct { name string - inputs bool - expect bool + inputs []int + expect int }{ - {"TestCase", true, true}, - {"TestCase", true, true}, - {"TestCase", false, false}, + {"TestCase1", []int{1, 0, 0, 0, 1, 0, 1}, 2}, + {"TestCase2", []int{1, 0, 0, 0}, 3}, + {"TestCase3", []int{0, 1}, 1}, } // 开始测试 @@ -30,10 +30,10 @@ func TestSolution(t *testing.T) { } } -// 压力测试 +// 压力测试 func BenchmarkSolution(b *testing.B) { } -// 使用案列 +// 使用案列 func ExampleSolution() { }