Advertisement
OIQ

Untitled

OIQ
Sep 19th, 2021
891
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.05 KB | None | 0 0
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <string>
  4.  
  5. using ll = long long;
  6. using ull = unsigned long long;
  7.  
  8.  
  9. // Функции для решения задачи
  10. namespace func{
  11.     ull gcd(ll a, ll b) {
  12.         return b == 0 ? llabs(a): gcd(b, a % b);
  13.     }
  14.  
  15.     ull lcm(ll a, ll b) {
  16.       return llabs(a) / gcd(a, b) * llabs(b);
  17.     }
  18.     // Проверка на целое число
  19.     bool validateNumber(std::string &number) {
  20.       return find(begin(number), end(number), '.') == end(number);
  21.     }
  22. }
  23.  
  24.  
  25. int main() {
  26.     int n;
  27.     std::cin >> n;
  28.     std::string prev, next;
  29.     std::cin >> prev;
  30.     if (!func::validateNumber(prev)) {
  31.         std::cout << "Sequence has float values!";
  32.         return 0;
  33.     }
  34.  
  35.  
  36.     for (int i = 0; i < n - 1; i++) {
  37.         std::cin >> next;
  38.         if (!func::validateNumber(next)) {
  39.           std::cout << "Sequence has float values!";
  40.           return 0;
  41.         }
  42.         prev = std::to_string(func::lcm(std::stoll(next), std::stoll(prev)));
  43.     }
  44.  
  45.     std::cout << prev;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement