1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
#include<list>
template<int... Integers>
std::list<int> PairReturn(void)
{
int n = sizeof...(Integers);
int numbs[sizeof...(Integers)] = { Integers... };
std::list<int> pairs;
int j = 1;
for (int i = 0; (i < n - 1); i++)
{
for (j = i + 1; (j < n); j++)
{
if (numbs[i] == numbs[j])
{
pairs.push_back(numbs[j]);
}
}
}
return pairs;
};
#include <iostream>
int main()
{
std::list<int> pairs = PairReturn<0, 1, 2, 2, 3, 4, 5>();
std::list<int> morePairs = PairReturn<0, 0, 2, 4, 2, 4, 2, 4, 5, 6, 7, 8, 4, 4, 6, 19, 33, 1773>();
for(std::list<int>::const_iterator iter = pairs.begin(); iter != pairs.end(); ++iter)
{
std::cout << "Pair: " << *iter << std::endl;
}
return 0;
}
| |