#include <iostream>
#include <numeric>
#include <set>
int main()
{
int t[4] = { 3, 3, 1, 5 };
std::set<int> mySet;
int mySum = std::accumulate(std::begin(t), std::end(t), 0,
[&](int n, int n2){return n += mySet.insert(n2).second?n2:0;});
std::cout << "The sum is: " << mySum << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bnVtZXJpYz4KI2luY2x1ZGUgPHNldD4KCmludCBtYWluKCkKewogICAgaW50IHRbNF0gPSB7IDMsIDMsIDEsIDUgfTsKICAgIHN0ZDo6c2V0PGludD4gbXlTZXQ7CiAgICBpbnQgbXlTdW0gPSBzdGQ6OmFjY3VtdWxhdGUoc3RkOjpiZWdpbih0KSwgc3RkOjplbmQodCksIDAsIAogICAgICAgICBbJl0oaW50IG4sIGludCBuMil7cmV0dXJuIG4gKz0gbXlTZXQuaW5zZXJ0KG4yKS5zZWNvbmQ/bjI6MDt9KTsKICAgIHN0ZDo6Y291dCA8PCAiVGhlIHN1bSBpczogIiA8PCBteVN1bSA8PCBzdGQ6OmVuZGw7CiAgICByZXR1cm4gMDsKfQ==