Re: [閒聊] 每日leetcode

作者: smart0eddie (smart0eddie)   2024-06-25 06:43:20
answer看好久才看懂
目標是把所有0翻成1
所以greedy從頭開始走
看到0就翻
而每次翻都會影響到後面k個
還要記錄過去k個翻了幾次
翻了偶數次的話數字不會變 翻了奇數次的話數字會相反
所以判斷變成現在是偶數次要翻0 是奇數次要翻1
而k大小的sliding window
往下一格的時候
可以看被丟掉那格是甚麼值來更新現在值
這樣只要一個int就能記錄現在k的window內翻了幾次
最後由於紀錄只是要看奇偶
所以可以再進一步簡化成0跟1來表示 用XOR做操作

Links booklink

Contact Us: admin [ a t ] ucptt.com