trang chủ / đề bài / lexcoprime

Dãy nguyên tố cùng nhau nhỏ nhất theo thứ tự từ điển

Đề bài

Mô tả

Cho một dãy a gồm n số nguyên. Hãy tìm một dãy b cũng gồm n số nguyên thoả mãn đồng thời các điều kiện sau:

  • b lớn hơn hoặc bằng a theo thứ tự từ điển.
  • bi≥2 với mọi i.
  • b đôi một nguyên tố cùng nhau: với mọi 1≤i<j≤n thì gcd(bi,bj)=1.

Trong tất cả các dãy b thoả mãn, hãy in ra dãy nhỏ nhất theo thứ tự từ điển.

Dãy x lớn hơn dãy y theo thứ tự từ điển nếu tồn tại chỉ số i sao cho xi>yi và xj=yj với mọi 1≤j<i.

Dữ liệu vào

  • Dòng đầu chứa số nguyên n.
  • Dòng thứ hai chứa n số nguyên a1,a2,…,an.

Dữ liệu ra

In ra n số nguyên b1,b2,…,bn cách nhau bởi dấu cách — dãy thoả mãn nhỏ nhất theo thứ tự từ điển.

Ràng buộc

  • 1≤n≤105
  • 2≤ai≤105

Ví dụ

Input Output Giải thích
5
2 3 5 4 13
2 3 5 7 11 Giữ nguyên 2,3,5. Tại vị trí 4, giá trị 4 có ước chung với 2 nên phải tăng lên: số nhỏ nhất ≥4 và nguyên tố cùng nhau với {2,3,5} là 7. Sau khi đã tăng, các vị trí sau chỉ cần lấy số nhỏ nhất còn hợp lệ, ở đây là 11.
3
10 3 7
10 3 7 Dãy đã đôi một nguyên tố cùng nhau nên giữ nguyên.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0