Функция erase(x) удаляет из multiset все элементы со значением x, есть ли способ или похожая структура данных, чтобы этого избежать и удалять только один элемент с данным значением?
Есть erase с аргументом-итератором.
Ведь вам же все равно нужно указать, какой из элементов с данным значением удалять?
Так что находите его (его итератор) и удаляйте..
Сборка персонального компьютера от Artline: умный выбор для современных пользователей