Todas las apariciones de un elemento en una lista

Crea una función genérica que devuelva los índices, comenzando desde cero, de cada aparición de un valor objetivo en una colección.

Ejemplos

getIndices(std::vector<std::string>{"a", "a", "b", "a", "b", "a"}, std::string("a")) ➞ std::vector<int>{0, 1, 3, 5}

getIndices(std::vector<int>{1, 5, 5, 2, 7}, 7) ➞ std::vector<int>{4}

getIndices(std::vector<int>{1, 5, 5, 2, 7}, 5) ➞ std::vector<int>{1, 2}

getIndices(std::vector<int>{1, 5, 5, 2, 7}, 8) ➞ std::vector<int>{}

Notas

  • Devuelve una colección vacía cuando el valor objetivo no aparezca.
  • Los valores de entrada son valores simples, no colecciones anidadas.