771. Решение LeetCode Jewels and Stones на C++

Задача «771. Драгоценности и камни» — популярная задача кодирования на LeetCode. Он включает в себя подсчет количества драгоценностей в данной цепочке камней. Вот решение на C++:

#include <unordered_set>
using namespace std;
int numJewelsInStones(string jewels, string stones) {
    unordered_set<char> jewelSet;

    // Add all jewels to the set
    for (char jewel : jewels) {
        jewelSet.insert(jewel);
    }

    int jewelCount = 0;

    // Count the number of stones that are jewels
    for (char stone : stones) {
        if (jewelSet.count(stone) > 0) {
            jewelCount++;
        }
    }

    return jewelCount;
}

В этом решении мы используем unordered_setдля хранения драгоценностей. Мы перебираем строку драгоценностей и вставляем каждую драгоценность в набор. Затем мы перебираем строку камней и проверяем, присутствует ли каждый камень в наборе. Если да, мы увеличиваем jewelCount. Наконец, в качестве результата мы возвращаем jewelCount.