TÌM CẶP SỐ

Với hai số nguyên dương ~a~ và ~b~, ta định nghĩa ~f(a,b)=lcm(a,b)-gcd⁡(a,b)~; trong đó ~lcm(a,b)~ là bội chung nhỏ nhất của hai số ~a,b~ và ~gcd⁡(a,b)~ là ước chung lớn nhất của hai số ~a,b~.

Yêu cầu: Cho số nguyên dương ~n~, hãy tìm giá trị lớn nhất của ~f(a,b)~ sao cho ~a+b=n~?

Dữ liệu vào:

  • Số nguyên dương ~n~ ~(2≤n≤10^9)~.

Kết quả:

  • Ghi một số nguyên dương cho biết kết quả của bài toán.

Ràng buộc

  • Có 40% số test tương ứng với 40% số điểm có ~2≤n≤2000~;
  • Có 30% số test khác tương ứng với 30% số điểm có ~2≤n≤2×10^5~;
  • Có 30% số test còn lại tương ứng với 30% số điểm không ràng buộc gì thêm.

Ví dụ:

Input 1

6 

Output 1

4 

Input 2

10 

Output 2

20 

Giải thích ví dụ:

  • Ví dụ 1: ~f(a,b)=4~ có giá trị lớn nhất khi ~a=1,b=5~ (hoặc ~a=5,b=1~), khi đó ~lcm(1,5)=5~ và ~gcd⁡(1,5)=1~
  • Ví dụ 2: ~f(a,b)=20~ có giá trị lớn nhất khi ~a=3,b=7~ (hoặc ~a=7,b=3~), khi đó ~lcm(3,7)=21~ và ~gcd⁡(3,7)=1~

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

hpcode.edu.vn
Code tích cực
Trong 24h
  1. nguyenvuquang (12/18)
  2. huy_notcoding (9/14)
  3. ilpnvm (9/18)
Trong 7 ngày
  1. ducchinh (169/223)
  2. hienpham (163/213)
  3. bichngoc (150/213)
Trong 30 ngày
  1. ducchinh (169/223)
  2. hienpham (163/213)
  3. tgtam2022 (150/369)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 37713

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