-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.go
More file actions
56 lines (53 loc) · 1.55 KB
/
main.go
File metadata and controls
56 lines (53 loc) · 1.55 KB
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
// Source: https://leetcode.com/problems/find-unique-binary-string
// Title: Find Unique Binary String
// Difficulty: Medium
// Author: Mu Yang <http://muyang.pro>
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Given an array of strings `nums` containing `n` **unique** binary strings each of length `n`, return a binary string of length `n` that **does not appear** in `nums`. If there are multiple answers, you may return **any** of them.
//
// **Example 1:**
//
// ```
// Input: nums = ["01","10"]
// Output: "11"
// Explanation: "11" does not appear in nums. "00" would also be correct.
// ```
//
// **Example 2:**
//
// ```
// Input: nums = ["00","01"]
// Output: "11"
// Explanation: "11" does not appear in nums. "10" would also be correct.
// ```
//
// **Example 3:**
//
// ```
// Input: nums = ["111","011","001"]
// Output: "101"
// Explanation: "101" does not appear in nums. "000", "010", "100", and "110" would also be correct.
// ```
//
// **Constraints:**
//
// - `n == nums.length`
// - `1 <= n <= 16`
// - `nums[i].length == n`
// - `nums[i] `is either `'0'` or `'1'`.
// - All the strings of `nums` are **unique** .
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
package main
func findDifferentBinaryString(nums []string) string {
n := len(nums)
res := make([]byte, n)
for i, num := range nums {
if num[i] == '0' {
res[i] = '1'
} else {
res[i] = '0'
}
}
return string(res)
}