现在请你帮忙设计一个算法,查找从索引 i 到具有目标颜色 c 的元素之间的最短距离。
如果不存在解决方案,请返回 -1。...示例 1:
输入:colors = [1,1,2,1,3,2,2,3,3],
queries = [[1,3],[2,2],[6,1]]
输出:[3,0,3]
解释:
距离索引 1 最近的颜色 3...距离索引 2 最近的颜色 2 就是它自己(距离为 0)。
距离索引 6 最近的颜色 1 位于索引 3(距离为 3)。...解题
找到下标 i 左右最近的 c 颜色花
2.1 二分查找
class Solution {
public:
vector shortestDistanceColor(vector<...-1 : dis;
}
return ans;
}
};
972 ms 114.4 MB
2.2 DP
记住左右两侧的最近花的位置,正反扫描2次
class Solution