diff --git a/longest-substring-without-repeating-characters/8804who.py b/longest-substring-without-repeating-characters/8804who.py new file mode 100644 index 0000000000..f7fe7e0676 --- /dev/null +++ b/longest-substring-without-repeating-characters/8804who.py @@ -0,0 +1,16 @@ +class Solution: + def lengthOfLongestSubstring(self, s: str) -> int: + start = 0 + end = 0 + answer = 0 + character_set = set() + while end int: + n, m = len(grid), len(grid[0]) + + answer = 0 + moves = [[-1,0],[1,0],[0,1],[0,-1]] + visited = [[False for _ in range(m)] for _ in range(n)] + def dfs(y, x): + for move in moves: + moved_y, moved_x = y+move[0], x+move[1] + if n > moved_y >= 0 and m > moved_x >= 0: + if grid[moved_y][moved_x] == '1' and not visited[moved_y][moved_x]: + visited[moved_y][moved_x] = True + dfs(moved_y, moved_x) + + for i in range(n): + for j in range(m): + if not visited[i][j] and grid[i][j] == '1': + visited[i][j] = True + answer += 1 + dfs(i, j) + return answer + diff --git a/reverse-linked-list/8804who.py b/reverse-linked-list/8804who.py new file mode 100644 index 0000000000..35a7cbc855 --- /dev/null +++ b/reverse-linked-list/8804who.py @@ -0,0 +1,16 @@ +# Definition for singly-linked list. +# class ListNode: +# def __init__(self, val=0, next=None): +# self.val = val +# self.next = next +class Solution: + def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]: + node = head + reversed_node = None + while node: + val = node.val + reversed_node = ListNode(val=val, next=reversed_node) + node = node.next + return reversed_node + + diff --git a/set-matrix-zeroes/8804who.py b/set-matrix-zeroes/8804who.py new file mode 100644 index 0000000000..c656a38a59 --- /dev/null +++ b/set-matrix-zeroes/8804who.py @@ -0,0 +1,18 @@ +class Solution: + def setZeroes(self, matrix: List[List[int]]) -> None: + """ + Do not return anything, modify matrix in-place instead. + """ + temp = [] + n, m = len(matrix), len(matrix[0]) + for i in range(n): + for j in range(m): + if matrix[i][j] == 0: + temp.append((i, j)) + + for t in temp: + for i in range(n): + matrix[i][t[1]] = 0 + for j in range(m): + matrix[t[0]][j] = 0 + diff --git a/unique-paths/8804who.py b/unique-paths/8804who.py new file mode 100644 index 0000000000..134a84733f --- /dev/null +++ b/unique-paths/8804who.py @@ -0,0 +1,14 @@ +class Solution: + def uniquePaths(self, m: int, n: int) -> int: + dp = [[0 for _ in range(n)] for _ in range(m)] + dp[0][0] = 1 + + for i in range(m): + for j in range(n): + if i-1>=0: + dp[i][j]+=dp[i-1][j] + if j-1>=0: + dp[i][j]+=dp[i][j-1] + + return dp[-1][-1] +