【发布时间】:2021-05-13 06:24:01
【问题描述】:
我已经尝试解决一个“简单”的 leetcode 问题已经两个小时了,我需要删除多次出现的 int 的每个实例,然后将非重复项添加在一起。我已经尝试了大约 10 种不同的方法,但我只能得到每个 int 的一个副本。这是我写的最好的解决方案,但是给定输入 {1,2,2,3,4} 它会返回 {1,2,3,4} 而预期的输出是 {1,3,4}
sort(nums.begin(), nums.end()); //Sort numerically
nums.erase(unique(nums.begin(), nums.end()), nums.end());
return (accumulate(nums.begin(), nums.end(), 0));
【问题讨论】:
-
unique 只删除非唯一的!因此
{2,2}->{2} -
那么我想下一步是想出一个不同的计划,因为你现在的计划行不通。这就是编程游戏和成为程序员的游戏方式。
标签: c++ algorithm vector data-structures stdvector