Darle una serie de elementos, donde elementos [i] = [typei, colori, namei], describiendo el tipo, color y nombre del elemento i-ésimo.
También le da una regla de recuperación representada por dos cadenas ruleKey y ruleValue.
Si el artículo i-ésimo puede cumplir una de las siguientes condiciones, se considera que coincide con la regla de búsqueda dada:
ruleKey == "tipo" y ruleValue == typei.
ruleKey == "color" y ruleValue == colori.
ruleKey == "nombre" y ruleValue == nombrei.
Cuente y devuelva el número de elementos que coinciden con las reglas de recuperación.
Cree una asignación de ruleKey a subíndice, y luego recorra:
class Solution {
public:
int countMatches(vector<vector<string>>& items, string ruleKey, string ruleValue) {
unordered_map<string, int> keyToIndex = {
{
"type", 0}, {
"color", 1}, {
"name", 2}};
int count = 0;
for (vector<string> &svec : items) {
if (svec[keyToIndex[ruleKey]] == ruleValue) {
++count;
}
}
return count;
}
};