821. Shortest Distance to a Character

xiaoxiao2021-02-28  22

Given a string S and a character C, return an array of integers representing the shortest distance from the character C in the string.

Example 1:

Input: S = "loveleetcode", C = 'e' Output: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0]

Note:

S string length is in [1, 10000]. C is a single character, and guaranteed to be in string S. All letters in S and C are lowercase.

class Solution { public: vector<int> shortestToChar(string S, char C) { vector<int> pos, res; for(int i = 0; i < S.length(); i++){ if(S[i] == C) pos.push_back(i); } for(int i = 0; i < S.length(); i++){ if(S[i] == C) res.push_back(0); else { int Min = INT_MAX; for(int j = 0; j < pos.size(); ++j){ Min = min(Min, abs(i - pos[j])); } res.push_back(Min); } } return res; } };
转载请注明原文地址: https://www.6miu.com/read-2625537.html

最新回复(0)