Re: [闲聊] 每日leetcode

楼主: JIWP (JIWP)   2025-07-31 22:08:47
898. Bitwise ORs of Subarrays
思路 :
用三个map : rec、prev、cur
rec记录所有出现过的or值
prev纪录0~i-1所有可能的or值
cur纪录prev里的or值跟nums[i]or后的结果以及nums[i]自己本身
最后回传rec里有多少个or值就好
golang code :
func subarrayBitwiseORs(nums []int) int {
prev := make(map[int]bool)
rec := make(map[int]bool)
for _, val := range nums {
cur := make(map[int]bool)
cur[val], rec[val] = true, true
for k := range prev {
num := k | val
cur[num] = true
rec[num] = true
}
prev = cur
}
return len(rec)
}
作者: SecondRun (雨夜琴声)   2025-07-31 22:09:00
别卷了
作者: wwndbk (黑人问号)   2025-07-31 22:14:00
别卷了

Links booklink

Contact Us: admin [ a t ] ucptt.com