Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <unordered_set>
- void SplitThreeNumber(int val, std::array<int, 3>& digits);
- bool IsUnique(const std::array<int, 3>& digits);
- int main()
- {
- constexpr int kLastThreeDigitNumber = 999;
- std::array<int, 3> digits;
- for (int i = 100; i < kLastThreeDigitNumber; ++i)
- {
- SplitThreeNumber(i, digits);
- if (IsUnique(digits))
- std::cout << i << std::endl;
- }
- }
- void SplitThreeNumber(int val, std::array<int, 3>& digits)
- {
- digits[0] = val / 100;
- int tmp = val % 100;
- digits[1] = tmp / 10;
- digits[2] = tmp % 10;
- }
- bool IsUnique(const std::array<int, 3>& digits)
- {
- return std::unordered_set<int>(digits.begin(), digits.end()).size() == 3;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement