Для поиска пар в векторе я использую unordered_set
. Мне нужна помощь в том, почему создание не работает.
Я работаю над кодом, пытающимся найти пары в векторе. Мне нужно unordered_set
для логики.
Вот мой код:
int sockMerchant(int n, vector<int> ar) {
set<int> colors = new unordered_set<int>();
int pairs;
for ( int i = 0 ; i < n ; i++ ) {
if(!colors.contains(ar[i])) {
colors.insert(ar[i]);
} else {
pairs++;
colors.erase(ar[i]);
}
}
return pairs;
}
Сообщение об ошибке:
Solution.cpp: In function 'int sockMerchant(int, std::vector<int>)':
Solution.cpp:10:23: error: conversion from 'std::unordered_set<int>*' to non-scalar type 'std::set<int>' requested
set<int> colors = new unordered_set<int>();
^~~~~~~~~~~~~~~~~~~~~~~~
Solution.cpp:15:20: error: 'class std::set<int>' has no member named 'contains'
if(!colors.contains(ar[i])) {
^~~~~~~~
Статус выхода
1
I, за исключением unordered_set
, который будет создан и содержит для использования.