Re: [閒聊] 每日leetcode

看板Marginalman作者 (6B)時間1年前 (2024/10/18 10:20), 編輯推噓1(100)
留言1則, 1人參與, 1年前最新討論串1000/1549 (看更多)
2044. or找最大 然後 conut ##ㄙ路 好難ㄛ是不是要開bitmap== 1. 先找max好了 先猜prefix sum ,要cnt是不是要開線段樹 不對欸是or不是xor 全部瞎雞巴亂加就是maxㄌ 2. 有maxㄌ怎麼找set 看一下constraint len = 16 ,爆搜好了== 報搜好快 class Solution { public: int countMaxOrSubsets(vector<int>& nums) { // find max int maxi = nums[0]; for(int i: nums){ maxi |= i; } cout << maxi; // conut int res = 0; cnt_max(maxi, nums, 0, 0, res); return res; } void cnt_max(const int maxi, vector<int>& nums, int idx, int or_val, int& res){ if(idx == nums.size()){ if(or_val == maxi) res++; return; } // get this cnt_max(maxi, nums, idx+1, or_val | nums[idx], res); // not get this cnt_max(maxi, nums, idx+1, or_val, res); } }; -- 很姆的咪 姆之咪 http://i.imgur.com/5sw7QOj.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.205.121.194 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1729218039.A.111.html

10/18 10:22, 1年前 , 1F
大師
10/18 10:22, 1F
文章代碼(AID): #1d4SNt4H (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1d4SNt4H (Marginalman)