Skip to main content

周赛 Weekly Contest 414

3280. Convert Date to Binary

class Solution:
def convertDateToBinary(self, date: str) -> str:
res = ""
dates = date.split("-")
for i in range(len(dates)):
d = dates[i]
d2 = bin(int(d))[2:]
res += d2
if i == 2:
break
res += "-"
return res

3281. Maximize Score of Numbers in Ranges

class Solution:
def maxPossibleScore(self, start: List[int], d: int) -> int:
start = sorted(start)
diff = []
for i in range(len(start)-1):
diff.append(start[i+1] - start[i])
diff = sorted(diff)
res = (sum(diff) + d)//len(diff)
print(diff)
if res > d+diff[0]: return d+diff[0]
return res

3282. Reach End of Array With Max Score

TLE

class Solution:
def findMaximumScore(self, nums: List[int]) -> int:
@cache
def dp(j):
if j == 0: return 0
res = float('-inf')
for i in range(j):
res = max(res, (j-i)*nums[i]+dp(i))
return res
return dp(len(nums)-1)

3283. Maximum Number of Moves to Kill All Pawns