Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. #include <iostream>
  2. #include <unordered_set>
  3.  
  4. void SplitThreeNumber(int val, std::array<int, 3>& digits);
  5. bool IsUnique(const std::array<int, 3>& digits);
  6.  
  7. int main()
  8. {
  9. constexpr int kLastThreeDigitNumber = 999;
  10. std::array<int, 3> digits;
  11.  
  12. for (int i = 100; i < kLastThreeDigitNumber; ++i)
  13. {
  14. SplitThreeNumber(i, digits);
  15. if (IsUnique(digits))
  16. std::cout << i << std::endl;
  17. }
  18. }
  19.  
  20. void SplitThreeNumber(int val, std::array<int, 3>& digits)
  21. {
  22. digits[0] = val / 100;
  23. int tmp = val % 100;
  24. digits[1] = tmp / 10;
  25. digits[2] = tmp % 10;
  26. }
  27.  
  28. bool IsUnique(const std::array<int, 3>& digits)
  29. {
  30. return std::unordered_set<int>(digits.begin(), digits.end()).size() == 3;
  31. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement