trang chủ / bài tập / recoverit

Khôi phục mảng

Đề bài

Mô tả

Gọi p là dãy vô hạn các số nguyên tố theo thứ tự tăng dần: p1=2, p2=3, p3=5, và cứ thế tiếp tục (pk là số nguyên tố thứ k).

Một mảng a gồm n số nguyên được giấu đi, mỗi phần tử thỏa 2ai2·105. Bạn không biết mảng a, nhưng biết mảng b được tạo ra từ a theo quy trình sau:

  1. Ban đầu, đặt mảng b bằng mảng a.
  2. Với mỗi i từ 1 đến n:
    • Nếu ai là số nguyên tố, thêm số pai (số nguyên tố thứ ai) vào cuối mảng b.
    • Ngược lại (nếu ai không phải số nguyên tố), thêm ước lớn nhất của ai khác chính ai vào cuối mảng b.
  3. Sau đó mảng thu được có độ dài 2n bị xáo trộn ngẫu nhiên rồi đưa cho bạn.

Nhiệm vụ của bạn là khôi phục một mảng a bất kỳ phù hợp, tức là mảng a mà từ đó có thể tạo ra mảng b đã cho theo quy trình trên. Dữ liệu đảm bảo luôn tồn tại nghiệm. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Dữ liệu vào

  • Dòng đầu chứa một số nguyên n: số phần tử của mảng a.
  • Dòng thứ hai chứa 2n số nguyên b1,b2,,b2n: các phần tử của mảng b.

Dữ liệu ra

In ra n số nguyên a1,a2,,an theo thứ tự bất kỳ: mảng a mà từ đó tạo được mảng b. Nếu có nhiều đáp án, in ra một đáp án bất kỳ.

Ràng buộc

  • 1n2·105
  • 2bi2750131 (số 2750131 là số nguyên tố thứ 199999)
  • Mọi ai trong đáp án phải thỏa 2ai2·105.

Ví dụ

Input Output Giải thích
3
3 5 2 3 2 4
3 4 2 Với a=[3,4,2]: a1=3 nguyên tố nên thêm p3=5; a2=4 không nguyên tố nên thêm ước lớn nhất là 2; a3=2 nguyên tố nên thêm p2=3. Tập hợp thu được là {3,5,4,2,2,3}, đúng bằng b sau khi xáo trộn.
1
3 6
6 a=[6]: 6 không nguyên tố, ước lớn nhất khác 63. Mảng b={6,3}.
1
2750131 199999
199999 a=[199999]: 199999 là số nguyên tố, thêm p199999=2750131.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0