ƯỚC CHUNG LỚN NHẤT

Ước chung lớn nhất của 2 số nguyên dương \(x\)\(y\) (kí hiệu: \(UCLN(x,\ y))\) là một số nguyên dương \(z\ (z > 0)\) lớn nhất sao cho cả \(x\)\(y\) đều chia hết cho \(z\).

Cho hai số nguyên dương \(a,\ b\ (1 < a < b \leq 10^{18})\).

Yêu cầu: Cho biết số nguyên dương \(\mathbf{x\ (x \geq 0)}\) nhỏ nhất sao cho \(\mathbf{UCLN}\left( \mathbf{a + x,\ b + x} \right)\mathbf{= b - a}\).

Dữ liệu vào:

+ Hai số nguyên dương \(a\)\(b\) nằm trên một dòng và cách nhau một kí tự trắng.

Kết quả ra:

+ Một số nguyên dương \(x\ (x \geq 0)\) thỏa mãn yêu cầu của bài toán.

Ví dụ:

Input Output Giải thích
5 9 3 \(x = 3\) là số nguyên dương nhỏ nhất tìm được thỏa mãn yêu cầu bài toán. Cụ thể: \(UCLN(a + 3,\ b + 3) = UCLN(5 + 3,\ 9 + 3)\)
\[= UCLN(8,\ 12) = 4 = b - a = 9 - 5\]

Ràng buộc dữ liệu:

  • \(50\%\) tests ứng với: \(0 < a < b \leq 10^{6}\);

  • \(50\%\) tests ứng với: \(0 < a < b \leq 10^{18}\).

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. andanhnek (14/32)
  2. _winnguyen_ (7/8)
  3. thang8a1l2 (4/11)
Trong 7 ngày
  1. cosu (48/85)
  2. hlammm (16/32)
  3. andanhnek (16/35)
Trong 30 ngày
  1. cosu (100/157)
  2. tranducbaolam02 (90/129)
  3. vo_tan_dung (58/128)
Thống kê
AC/Sub: 120817/226949
Pascal: 18142
C++: 157988
Python: 50747
Lượt xem/tải tests: 43021

Lưu Hải Phong - 2020
[email protected]