Skip to content

Commit e0bf2de

Browse files
committed
Daily
1 parent e302cfc commit e0bf2de

File tree

3 files changed

+77
-18
lines changed

3 files changed

+77
-18
lines changed

README.md

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ Profile: [Zanger](https://leetcode.com/u/Zanger/)
1010
|:-----------|:--------|:----------|:-----------|:---------|:---------|:---------|:---------|:---------|:----------|:------------|:-------------------|
1111
| **Easy** | 33 | 0 | 30 | 0 | 0 | 63 | 0 | 0 | 14 | *140* | *91* |
1212
| **Medium** | 36 | 1 | 36 | 2 | 2 | 176 | 2 | 2 | 4 | *261* | *148* |
13-
| **Hard** | 1 | 0 | 0 | 0 | 0 | 17 | 0 | 0 | 0 | *18* | *12* |
14-
| **Total** | *70* | *1* | *66* | *2* | *2* | *256* | *2* | *2* | *18* | **419** | **251** |
13+
| **Hard** | 2 | 0 | 0 | 0 | 0 | 18 | 0 | 0 | 0 | *20* | *13* |
14+
| **Total** | *71* | *1* | *66* | *2* | *2* | *257* | *2* | *2* | *18* | **421** | **252** |
1515

16-
Questions done in multiple languages and/or multiple ways: 168
16+
Questions done in multiple languages and/or multiple ways: 169
1717
<br>
18-
Unique questions done: **251**
18+
Unique questions done: **252**
1919

2020

2121
## Category Notes
@@ -275,17 +275,18 @@ Unique questions done: **251**
275275
| Medium | 3196 | w contest 403 - q3 | Contest | [py](<my-submissions/w contest 403/m3196 q3 v2.py>), [py](<my-submissions/w contest 403/m3196 q3.py>) | | | | |
276276

277277
## Hard
278-
| Level | # | Title | Category | Python | Java | MySQL | C | Other |
279-
|:--------|-----:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------|:-------------------------------------------------------------------------------------------------------------------------------------------|:-------|:--------|:----------------------------|:--------|
280-
| Hard | 23 | [Merge k Sorted Lists](<https://leetcode.com/problems/merge-k-sorted-lists>) | B75, N150 | [py](<my-submissions/h23.py>) | | | | |
281-
| Hard | 25 | [Reverse Nodes in k-Group](<https://leetcode.com/problems/reverse-nodes-in-k-group>) | N150 | | | | [c](<my-submissions/h25.c>) | |
282-
| Hard | 84 | [Largest Rectangle in Histogram](<https://leetcode.com/problems/largest-rectangle-in-histogram>) | N150 | [py](<my-submissions/h84 v1.py>), [py](<my-submissions/h84 v2 Optimized Stack.py>) | | | | |
283-
| Hard | 224 | [Basic Calculator](<https://leetcode.com/problems/basic-calculator>) | | [py](<my-submissions/h224.py>) | | | | |
284-
| Hard | 239 | [Sliding Window Maximum](<https://leetcode.com/problems/sliding-window-maximum>) | N150 | [py](<my-submissions/h239 v1.py>), [py](<my-submissions/h239 v2.py>) | | | | |
285-
| Hard | 273 | [Integer to English Words](<https://leetcode.com/problems/integer-to-english-words>) | | [py](<my-submissions/h273.py>) | | | | |
286-
| Hard | 330 | [Patching Array](<https://leetcode.com/problems/patching-array>) | Daily | [py](<my-submissions/h330 Daily.py>) | | | | |
287-
| Hard | 502 | [IPO](<https://leetcode.com/problems/ipo>) | Daily | [py](<my-submissions/h502 Daily.py>) | | | | |
288-
| Hard | 987 | [Vertical Order Traversal of a Binary Tree](<https://leetcode.com/problems/vertical-order-traversal-of-a-binary-tree>) | | [py](<my-submissions/h987 v2 Lambda Sort By 2 Cols.py>), [py](<my-submissions/h987 v3 Removed Heaping.py>), [py](<my-submissions/h987.py>) | | | | |
289-
| Hard | 1255 | [Maximum Score Words Formed by Letters](<https://leetcode.com/problems/maximum-score-words-formed-by-letters>) | | [py](<my-submissions/h1255 v1.py>) | | | | |
290-
| Hard | 1284 | [Minimum Number of Flips to Convert Binary Matrix to Zero Matrix](<https://leetcode.com/problems/minimum-number-of-flips-to-convert-binary-matrix-to-zero-matrix>) | | [py](<my-submissions/h1284 converted for booleans.py>), [py](<my-submissions/h1284.py>) | | | | |
291-
| Hard | 2258 | [Escape the Spreading Fire](<https://leetcode.com/problems/escape-the-spreading-fire>) | | [py](<my-submissions/h2258 v1 with all the records of my pain.py>), [py](<my-submissions/h2258 v2 cleaned but still ugly.py>) | | | | |
278+
| Level | # | Title | Category | Python | Java | MySQL | C | Other |
279+
|:--------|-----:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------|:-----------|:-------------------------------------------------------------------------------------------------------------------------------------------|:-------|:--------|:-----------------------------|:--------|
280+
| Hard | 23 | [Merge k Sorted Lists](<https://leetcode.com/problems/merge-k-sorted-lists>) | B75, N150 | [py](<my-submissions/h23.py>) | | | | |
281+
| Hard | 25 | [Reverse Nodes in k-Group](<https://leetcode.com/problems/reverse-nodes-in-k-group>) | N150 | | | | [c](<my-submissions/h25.c>) | |
282+
| Hard | 84 | [Largest Rectangle in Histogram](<https://leetcode.com/problems/largest-rectangle-in-histogram>) | N150 | [py](<my-submissions/h84 v1.py>), [py](<my-submissions/h84 v2 Optimized Stack.py>) | | | | |
283+
| Hard | 224 | [Basic Calculator](<https://leetcode.com/problems/basic-calculator>) | | [py](<my-submissions/h224.py>) | | | | |
284+
| Hard | 239 | [Sliding Window Maximum](<https://leetcode.com/problems/sliding-window-maximum>) | N150 | [py](<my-submissions/h239 v1.py>), [py](<my-submissions/h239 v2.py>) | | | | |
285+
| Hard | 273 | [Integer to English Words](<https://leetcode.com/problems/integer-to-english-words>) | | [py](<my-submissions/h273.py>) | | | | |
286+
| Hard | 330 | [Patching Array](<https://leetcode.com/problems/patching-array>) | Daily | [py](<my-submissions/h330 Daily.py>) | | | | |
287+
| Hard | 502 | [IPO](<https://leetcode.com/problems/ipo>) | Daily | [py](<my-submissions/h502 Daily.py>) | | | | |
288+
| Hard | 987 | [Vertical Order Traversal of a Binary Tree](<https://leetcode.com/problems/vertical-order-traversal-of-a-binary-tree>) | | [py](<my-submissions/h987 v2 Lambda Sort By 2 Cols.py>), [py](<my-submissions/h987 v3 Removed Heaping.py>), [py](<my-submissions/h987.py>) | | | | |
289+
| Hard | 995 | [Minimum Number of K Consecutive Bit Flips](<https://leetcode.com/problems/minimum-number-of-k-consecutive-bit-flips>) | | [py](<my-submissions/h995.py>) | | | [c](<my-submissions/h995.c>) | |
290+
| Hard | 1255 | [Maximum Score Words Formed by Letters](<https://leetcode.com/problems/maximum-score-words-formed-by-letters>) | | [py](<my-submissions/h1255 v1.py>) | | | | |
291+
| Hard | 1284 | [Minimum Number of Flips to Convert Binary Matrix to Zero Matrix](<https://leetcode.com/problems/minimum-number-of-flips-to-convert-binary-matrix-to-zero-matrix>) | | [py](<my-submissions/h1284 converted for booleans.py>), [py](<my-submissions/h1284.py>) | | | | |
292+
| Hard | 2258 | [Escape the Spreading Fire](<https://leetcode.com/problems/escape-the-spreading-fire>) | | [py](<my-submissions/h2258 v1 with all the records of my pain.py>), [py](<my-submissions/h2258 v2 cleaned but still ugly.py>) | | | | |

my-submissions/h995.c

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
int minKBitFlips(int* nums, int numsSize, int k) {
2+
int flips = 0;
3+
int windowFlips = 0;
4+
int hmap[] = {1, 0};
5+
6+
bool flipped[numsSize];
7+
memset(flipped, 0, sizeof(bool) * numsSize);
8+
9+
for (int i = 0; i < numsSize; i++) {
10+
if (i >= k && flipped[i - k]) {
11+
windowFlips--;
12+
}
13+
14+
int current = nums[i];
15+
16+
if (windowFlips % 2) {
17+
current = hmap[current];
18+
}
19+
20+
if (!current) {
21+
if (i + k > numsSize) {
22+
return -1;
23+
}
24+
25+
windowFlips++;
26+
flips++;
27+
flipped[i] = true;
28+
}
29+
}
30+
return flips;
31+
}

my-submissions/h995.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
class Solution:
2+
def minKBitFlips(self, nums: List[int], k: int) -> int:
3+
flips = 0
4+
numsFlipped = [False] * len(nums)
5+
flippedInWindow = 0
6+
7+
hmap = (1, 0)
8+
9+
for i, num in enumerate(nums) :
10+
if i >= k and numsFlipped[i - k] :
11+
flippedInWindow -= 1
12+
13+
# odd number of flips
14+
if flippedInWindow % 2 :
15+
num = hmap[num]
16+
17+
# is zero
18+
if not num :
19+
if i + k > len(nums) :
20+
print(flips)
21+
return -1
22+
23+
flippedInWindow += 1
24+
flips += 1
25+
numsFlipped[i] = True
26+
27+
return flips

0 commit comments

Comments
 (0)