Re: [閒聊] 每日leetcode

看板Marginalman作者 (是oin的說)時間1年前 (2024/09/15 13:05), 編輯推噓1(101)
留言2則, 2人參與, 1年前最新討論串861/1554 (看更多)
題目 找最長的一串字字串 裡面的母音都出現偶數次 思路 用bitset<5>記錄當前狀態 用map記錄那種狀態之後往回找有沒有一樣的 一樣的就代表出現偶數次 後來才發現原來map會把 所有都是0的bitset的key 直接默認值 = 0 所以還要自己弄成-1 有夠靠北 ```cpp class Solution { public: int findTheLongestSubstring(string s) { int n = s.size(); unordered_map<bitset<5>,int> save; bitset<5> now = {0}; save[now] = -1; int res = 0; for(int i = 0 ; i < n ; i ++) { if(s[i] == 'a')now[0] = 1-now[0]; if(s[i] == 'e')now[1] = 1-now[1]; if(s[i] == 'i')now[2] = 1-now[2]; if(s[i] == 'o')now[3] = 1-now[3]; if(s[i] == 'u')now[4] = 1-now[4]; if(save.find(now) != save.end()) { res = max(res , i - save[now]); } else save[now] = i; // for(int j = 0 ; j < 5 ; j ++) // { // cout << " " << now[j]; // } // cout << endl; } return res; } }; ``` -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.162.18.55 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1726376716.A.73D.html

09/15 13:06, 1年前 , 1F
你有什麼用
09/15 13:06, 1F

09/15 13:11, 1年前 , 2F
我好崇拜你
09/15 13:11, 2F
文章代碼(AID): #1cvciCSz (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1cvciCSz (Marginalman)