ƯỚ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. npk1605 (5/10)
  2. sythai (4/5)
  3. hungeazy08 (4/26)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

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