SOLUTION INFO
C++ · main.cpp
class Solution {
public:
string shiftingLetters(string s, vector<vector<int>>& shifts) {
int N = (int)s.size();
vector<int> P(N + 1);
for(const vector<int> &shift: shifts) {
int start = shift[0];
int end = shift[1];
int direction = 2 * shift[2] - 1;
P[start] += direction;
P[end + 1] -= direction;
}
int cur = 0;
for(int i = 0; i < N; ++i) {
cur = (cur + P[i] % 26 + 26) % 26;
s[i] = (char)((s[i] - 'a' + cur) % 26 + 'a');
}
return s;
}
};
SOLUTION DESCRIPTION
풀이 설명
등록된 풀이 설명이 없습니다.