[Cpp-STL] Set6
Bài tập.
Một vector được gọi là vector beautifull nếu một số trong vector đó chỉ xuất hiện đúng một lần.
Cho vector v
gồm các số nguyên. Cần xóa ít nhất bao nhiều phần tử trong v
để vector v
trở thành vector beautifull .
Ví dụ:
- Với
v = [2, 3, 6, 3]
thìvectorBeautifull(v) = 1
.
Giải thích: Cần xóa một số3
. - Với
v = [1, 2, 3]
thìvectorBeautifull(v) = 0
.
Hướng dẫn.
Sử dụng set s
, insert tất cả phần tử trong v
và s
.
Kết quả chính là v.size() - s.size().
Code mẫu:
int vectorBeautifull(std::vector<int> v)
{
set<int> s(v.begin(), v.end());
return v.size() - s.size();
}
Post Comment