В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
jykito28
jykito28
22.01.2021 00:07 •  Информатика

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

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

Показать ответ
Ответ:
lyskoyana39
lyskoyana39
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);

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота