Hàm của Anu

Đề bài

Mô tả

Cho hàm f(x,y)=(x|y)y, trong đó | là phép OR nhị phân. Ví dụ f(11,6)=(11|6)6=156=9. Có thể chứng minh f(x,y) luôn không âm với mọi x,y0.

Với một mảng [a1,a2,,an], giá trị của mảng được định nghĩa là:

f(f(f(f(a1,a2),a3),,an1),an)

nghĩa là áp dụng hàm f liên tiếp từ trái sang phải.

Cho một mảng (các phần tử không nhất thiết phân biệt). Hãy sắp xếp lại các phần tử của mảng sao cho giá trị của mảng là lớn nhất có thể.

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, là một cách sắp xếp lại mảng cho giá trị lớn nhất. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ràng buộc

  • 1n105
  • 0ai109

Ví dụ

Input Output Giải thích
4
4 0 11 6
11 4 0 6 Giá trị của [11,4,0,6]f(f(f(11,4),0),6)=f(f(11,0),6)=f(11,6)=9, là giá trị lớn nhất. Các thứ tự khác đưa 11 lên đầu, ví dụ [11,6,4,0], cũng hợp lệ.
1
13
13 Mảng chỉ có một phần tử nên giá trị bằng chính phần tử đó.

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