File tree 1 file changed +5
-6
lines changed
1 file changed +5
-6
lines changed Original file line number Diff line number Diff line change @@ -7,18 +7,17 @@ class Solution {
7
7
vector<bool > canMakePalindromeQueries (string s, vector<vector<int >>& queries) {
8
8
vector<int > lookup (26 , -1 );
9
9
int d = 0 ;
10
- for (auto & c : s) {
11
- if (lookup[c - ' a' ] = = -1 ) {
12
- lookup[c - ' a ' ] = d++ ;
10
+ for (const auto & c : s) {
11
+ if (lookup[c - ' a' ] ! = -1 ) {
12
+ continue ;
13
13
}
14
- c = lookup[c - ' a' ];
14
+ lookup[c - ' a' ] = d++ ;
15
15
}
16
-
17
16
vector<int > prefix (size (s) / 2 + 1 );
18
17
vector<vector<int >> prefixs1 (size (s) / 2 + 1 , vector<int >(d));
19
18
vector<vector<int >> prefixs2 (size (s) / 2 + 1 , vector<int >(d));
20
19
for (int i = 0 ; i < size (s) / 2 ; ++i) {
21
- const int x = s[i], y = s[(size (s) - 1 ) - i];
20
+ const int x = lookup[ s[i] - ' a ' ] , y = lookup[ s[(size (s) - 1 ) - i] - ' a ' ];
22
21
prefix[i + 1 ] = prefix[i] + (x != y ? 1 : 0 );
23
22
for (int j = 0 ; j < d; ++j) {
24
23
prefixs1[i + 1 ][j] = prefixs1[i][j] + (j == x ? 1 : 0 );
You can’t perform that action at this time.
0 commit comments