838. 推多米諾
昨天那題還沒想到怎麼寫==
今天的蠻簡單的
往左推 越推越小力
往右推 越推越小力
推完再看偏左偏右
是說views 要先include ranges才能用ㄟ
不然要ranges::views
可是他不是本來就全部都include了嗎
為什麼捏
#include <ranges>
class Solution {
public:
string pushDominoes(string domino) {
int n = domino.length();
vector<int> cnt(n, 0);
for(auto [i, c]: views::enumerate(domino)){
if(c=='L'){ // -1
cnt[i] = -n;
for(int j = i-1, cur = -n+1; j >= 0 and domino[j] == '.'; j--){
cnt[j] += cur++;
}
}
if(c=='R'){ // +1
cnt[i] = n;
for(int j = i+1, cur = n-1; j < n and domino[j] == '.'; j++){
cnt[j] += cur--;
}
}
}
for(int i = 0; i < n; i++){
char &c = domino[i];
if(c=='.'){
if(cnt[i] > 0) c = 'R';
if(cnt[i] < 0) c = 'L';
}
}
return domino;
}
};
--
很姆的咪
姆之咪
http://i.imgur.com/5sw7QOj.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.205.121.194 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1746163260.A.410.html