Требуется найти НОК двух чисел.
Входные данные
Даны натуральные числа A и B(A,B<1018).
Выходные данные
В единственной строке выведите НОК двух чисел. Гарантируется, что ответ не превышает 1018 .
Пример

Вход Выход
4 2 4
Вход Выход
1 3 3
Вход Выход
12 18 36

Человек1234512345 Человек1234512345    3   19.05.2020 11:21    10

Ответы
rozik080 rozik080  15.10.2020 00:06

/** libraries */

#include <iostream>

#include <cmath>

#include <vector>

#include <map>

#include <set>

#include <queue>

#include <stack>

#include <algorithm>

/** libraries */

using namespace std;

/** defines */

#define ll long long

#define ld long double

#define yes cout << "YES" << "\n"

#define no cout << "NO" << "\n"

/** defines */

void swap(ll *a, ll *b){

   ll temp = *a;

   *a = *b;

   *b = temp;

}

ll nod(ll a, ll b){

   if (a < b) {

       swap(a, b);

   }

   if (b) {

       return nod(b, a % b);

   } else {

       return a;

   }

}

ll nok(ll a, ll b){

   return a/nod(a,b)*b;

}

signed main() {

   ios_base::sync_with_stdio(false);

   cin.tie(nullptr);

   cout.tie(nullptr);

   ll a,b;

   cin >> a >> b;

   cout << nok(a,b);

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика