Skip to content

Commit b3afefe

Browse files
solves set mismatch
1 parent bb7ed26 commit b3afefe

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@
167167
| 633 | [Sum Square Numbers](https://leetcode.com/problems/sum-of-square-numbers) | [![Java](assets/java.png)](src/SumOfSquareNumbers.java) [![Python](assets/python.png)](python/sum_of_squares_numbers.py) |
168168
| 637 | [Average of Levels in Binary Tree](https://leetcode.com/problems/average-of-levels-in-binary-tree) | |
169169
| 643 | [Maximum Average SubArray I](https://leetcode.com/problems/maximum-average-subarray-i) | [![Java](assets/java.png)](src/MaximumAverageSubArrayI.java) [![Python](assets/python.png)](python/maximum_average_subarray_I.py) |
170-
| 645 | [Set Mismatch](https://leetcode.com/problems/set-mismatch) | |
170+
| 645 | [Set Mismatch](https://leetcode.com/problems/set-mismatch) | [![Java](assets/java.png)](src/SetMismatch.java) [![Python](assets/python.png)](python/set_mismatch.py) |
171171
| 653 | [Two Sum IV - Input is a BST](https://leetcode.com/problems/two-sum-iv-input-is-a-bst) | |
172172
| 657 | [Robot Return to Origin](https://leetcode.com/problems/robot-return-to-origin) | |
173173
| 661 | [Image Smoother](https://leetcode.com/problems/image-smoother) | |

python/set_mismatch.py

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
from typing import List
2+
3+
4+
class Solution:
5+
def findErrorNums(self, nums: List[int]) -> List[int]:
6+
repeated, missing = 0, 0
7+
for number in nums:
8+
if nums[abs(number) - 1] < 0: repeated = number
9+
else: nums[abs(number) - 1] *= -1
10+
for index in range(len(nums)):
11+
if nums[index] > 0:
12+
missing = index + 1
13+
break
14+
return [abs(repeated), missing]

src/SetMismatch.java

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
public class SetMismatch {
2+
public int[] findErrorNums(int[] array) {
3+
int repeated = 0, missing = 0;
4+
for (int number : array) {
5+
if (array[Math.abs(number) - 1] < 0) repeated = number;
6+
else array[Math.abs(number) - 1] *= -1;
7+
}
8+
for (int index = 0 ; index < array.length ; index++) {
9+
if (array[index] > 0) {
10+
missing = index + 1;
11+
break;
12+
}
13+
}
14+
return new int[] {Math.abs(repeated), missing};
15+
}
16+
}

0 commit comments

Comments
 (0)