OPTIMAL - Tìm x
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 2.0 giây
Giới hạn bộ nhớ: 512 megabyte
Đăng bởi: ami

          Cuối cùng, Ami cũng trúng giải xổ số độc đắc và mời được Cuom1999 về dạy toán cho mình. Thấy Ami yếu phần trị tuyệt đối và bất phương trình, Cuom1999 quyết định dạy cho Ami những bài toán tìm Min. Cuom1999 cho Ami 2 dãy số a và b gồm n phần tử được đánh số từ 1 đến n. Cuom1999 muốn Ami chọn ra một số x sao cho biểu thức sau đạt giá trị nhỏ nhất

          S = |a1 – x * gcd(a1 , b1)| + |a2 – x * gcd(a2 , b2)| + …. + |an – x * gcd(an,bn)|.

Các kí hiệu |x| là giá trị tuyệt đối của x và gcd(x,y) là ước chung lớn nhất của x và y. Các bạn hãy giúp Ami chọn ra một số x sao cho S đạt giá trị bé nhất nhé.

Dữ liệu vào

Dòng đầu là 1 số nguyên dương n (n <= 2 * 105) là số phần tử của 2 dãy.

Dòng tiếp theo là n số nguyên dương a1,a2,…,an (ai <= 109) là các phần tử của dãy a.

Dòng tiếp theo là n số nguyên dương b1,b2,…,bn (bi <= 109) là các phần tử của dãy b.

Dữ liệu ra

Một số nguyên là tổng S nhỏ nhất có thể đạt được.

Ví dụ

Input

3

3 4 8

9 8 16

Output

0

Giải thích

S = |3 – x * 3| + |4 – x * 4| + |8 – x * 8|. Chọn x = 1, ta có S = 0 và đây là giá trị nhỏ nhất có thể đạt được.

Back to Top