leetcode第149場周賽(8 11)

2021-09-26 02:19:16 字數 2298 閱讀 9042

給你乙個按yyyy-mm-dd格式表示日期的字串date,請你計算並返回該日期是當年的第幾天。

通常情況下,我們認為 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此類推。每個月的天數與現行公元紀年法(格里高利歷)一致。

class solution(object):

def ordinalofdate(self, date):

""":type date: str

:rtype: int

"""dic =

num = list(map(int,date.split('-')))

res = 0

flag = 0

for i in range(len(num)):

if i == 0:

a = num[0]//100

if num[0]%100 == 0:

if (num[0]//100)%4==0:

flag = 1

elif num[0] %4 == 0:

flag = 1

elif i == 1:

for j in range(1,num[i]):

if j == 2 and flag == 1:

res += dic[j]+1

else:

res += dic[j]

else:

res += num[2]

return res

如果字串中的所有字元都相同,那麼這個字串是單字元重複的字串。

給你乙個字串text,你只能交換其中兩個字元一次或者什麼都不做,然後得到一些單字元重複的子串。返回其中最長的子串的長度。

class solution(object):

def maxrepopt1(self, text):

""":type text: str

:rtype: int

"""ans = 1

lens = len(text)

dic = collections.counter(text)

l, r = 0, 0

while r < lens:

k = 0

while r < lens and text[r] == text[l]:

r += 1

k += 1

if r < lens:

if dic[text[l]] >= l-r+1:

r += 1

while r < lens and text[r] == text[l]:

r += 1

ans = max(ans, min(r-l, dic[text[l]]))

else:

ans = max(ans, min(r-l, dic[text[l]]))

else:

ans = max(ans, r-l)

break

l += k

r = l

return ans

這裡有d個一樣的骰子,每個骰子上都有f個面,分別標號為1, 2, ..., f

我們約定:擲骰子的得到總點數為各骰子面朝上的數字的總和。

如果需要擲出的總點數為target,請你計算出有多少種不同的組合情況(所有的組合情況總共有f^d種),10^9 + 7後返回。

class solution(object):

def numrollstotarget(self, d, f, target):

""":type d: int

:type f: int

:type target: int

:rtype: int

"""dp = [[0]*(target+1) for _ in range(d+1)]

dp[0][0] = 1

for i in range(d):

for j in range(target+1):

for k in range(1,f+1):

if dp[i][j]!=0 and j+k <= target:

dp[i+1][j+k] += dp[i][j]

dp[i+1][j+k] %= 10**9+7

return dp[d][target]

LeetCode 第 149 場周賽

1.1 題目描述 1.2 解題思路 比較容易的一題,搞清楚平年 閏年的判定規則,就很容易做出來。1.3 解題 class solution totalday day return totalday private int getday int year,int month return month ...

leetcode 第132場周賽

愛麗絲和鮑勃一起玩遊戲,他們輪流行動。愛麗絲先手開局。最初,黑板上有乙個數字n。在每個玩家的回合,玩家需要執行以下操作 如果玩家無法執行這些操作,就會輸掉遊戲。只有在愛麗絲在遊戲中取得勝利時才返回true,否則返回false。假設兩個玩家都以最佳狀態參與遊戲。示例 1 輸入 2輸出 true解釋 愛...

leetcode周賽 第176場

題目描述 給你乙個 m n 的矩陣 grid,矩陣中的元素無論是按行還是按列,都以非遞增順序排列。請你統計並返回 grid 中 負數 的數目。示例 1 輸入 grid 4,3,2,1 3,2,1,1 1,1,1,2 1,1,2,3 輸出 8 解釋 矩陣中共有 8 個負數。示例 2 輸入 grid 3...