В следующем for
l oop я проверяю, находится ли буква в запросе в unordered_map<string, int>
. Если это не так, я распечатываю некоторые вещи.
queries = [ ["a", "c"], ["b", "a"], ["a", "e"], ["a", "a"], ["x", "x"] ]
for (vector<string>& q : queries) {
int start = index[q[0]], end = index[q[1]];
if (index.find("z") == index.end()) {cout << "z" << '\n';
}
index
содержит только a, b, c
. Соответственно, вывод будет следующим:
z
z
z
z
z
Что и должно быть, потому что в одном из запросов есть z
. Печать размера index
дает 3.
Однако, если я запустил это:
for (vector<string>& q : queries) {
int start = index[q[0]], end = index[q[1]];
if (index.find(q[0]) == index.end()) {cout << "z" << '\n';
}
, я не получаю никакого вывода, но я ожидаю вывода для x
, потому что это отсутствует в index
.
Почему это?