Week1 Arrays
Week1 Arrays
Week1 Arrays
class Solution:
def longestSubarray(self, nums: List[int]) -> int:
res = 0
l, left, count = len(nums), 0, 0
if count == l:
return count-1
else:
return max(res, left+count)
===============================================
class SubrectangleQueries:
def updateSubrectangle(self, row1: int, col1: int, row2: int, col2: int,
newValue: int) -> None:
for i in range(row1, row2+1):
for j in range(col1, col2+1):
self.matrix[i][j] = newValue
===============================================
class Solution:
def findMinFibonacciNumbers(self, k: int) -> int:
fibo = []
a, b = 0, 1
ans = 0
while a <= k:
fibo.append(a)
b, a = a+b, b
for i in range(len(fibo)-1, 0, -1):
if k >= fibo[i]:
k -= fibo[i]
ans +=1
return ans
===============================================
class Solution:
def numTeams(self, rating: List[int]) -> int:
n = len(rating)
up = [0] * n
down = [0] * n
teams = 0
return teams
===============================================
class Solution:
def minSetSize(self, arr: List[int]) -> int:
coll = collections.Counter(arr)
values = sorted(coll.values(), reverse=True)
z = 0
for i in range(len(values)):
z += values[i]
if z >= len(arr)//2:
return i + 1
===============================================
class Solution:
def countSquares(self, matrix: List[List[int]]) -> int:
rows = len(matrix)
cols = len(matrix[0])
temp = [[0]*cols for _ in range(rows)]
count = 0
return count
===============================================
class Solution:
def leastInterval(self, tasks: List[str], n: int) -> int:
freq = collections.Counter(tasks)
max_freq = max(freq.values())
freq = list(freq.values())
max_freq_ele_count = 0
i = 0
while(i < len(freq)):
if(freq[i] == max_freq):
max_freq_ele_count += 1
i += 1
===============================================
===============================================