GCD lớn nhất

Xem PDF



Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 800 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Hãy xem xét tất cả các số nguyên trong phạm vi từ \(1\) đến \(n\). Trong số tất cả các cặp số nguyên phân biệt trong phạm vi này, hãy tìm ước số chung lớn nhất có thể có của các số nguyên trong cặp. Về mặt hình thức, hãy tìm giá trị lớn nhất của \(\gcd(a, b)\) (ước chung lớn nhất của \(a\)\(b\)), trong đó \(1 \le a < b \le n\).

Input

  • Dòng đầu tiên chứa số nguyên dương \(t\) (\(t \le 10^7\)), số lượng các trường hợp cần xét.
  • \(t\) dòng tiếp theo, mỗi dòng chứa một số nguyên dương \(n\) (\(2 \le n \le 10^{15}\)).

Output

  • Gồm \(t\) dòng, mỗi dòng chứa số nguyên dương là ước số chung lớn nhất lớn nhất của các cặp số thuộc đoạn \([1, n]\).

Example

Test 1

Input
2
3
5
Output
1
2
Note
  • Ở trường hợp 1: \(n = 3\), ước chung lớn nhất của mọi cặp \((a, b) \le n\) là: \(\gcd(1, 2) = \gcd(1, 3) = \gcd(2, 3) = 1\) nên kết quả là \(1\).
  • Ở trường hợp 2: \(n = 5\), ước chung lớn nhất của mọi cặp \((a, b) \le n\) là: \(\gcd(1, 2) = \gcd(1, 3) = \gcd(1, 4) = \gcd(1, 5) = \gcd(2, 3) = \gcd(2, 5) = \gcd(3, 4) = \gcd(3, 5) = \gcd(4, 5) = 1\), \(\gcd(2, 4) = 2\) nên kết quả là \(2\).

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.