Đầu vào
Hai danh sách A
và B
các số nguyên không âm.
Đầu ra
Hoặc 1
, 0
hoặc-1
, tùy thuộc vào việc A
lớn hơn, bằng hoặc nhỏ hơn so B
với thứ tự từ điển xoắn như được định nghĩa dưới đây. Nếu bạn muốn, bạn có thể thay thế 1
, 0
và -1
với bất kỳ ba giá trị không đổi khác.
Thứ tự từ điển xoắn giống như thứ tự từ điển thông thường, trong đó bạn so sánh thành phần danh sách theo yếu tố và quyết định thứ tự của chúng ở chỉ số khác nhau đầu tiên. Tuy nhiên, trong phiên bản xoắn, chúng tôi sử dụng một thứ tự khác nhau cho các số nguyên không âm ở mỗi chỉ số. Cụ thể, tại mỗi chỉ mục i
(lập chỉ mục bắt đầu từ 1
), thứ tự của các i
số nguyên không âm đầu tiên (từ 0
đến i-1
) được đảo ngược và chúng được di chuyển trên tất cả các số khác. Ngoài ra, "phần tử bị thiếu" biểu thị một danh sách ngắn hơn danh sách khác được di chuyển ngay bên dưới i-1
. Trực quan, thứ tự tại chỉ mục i
là
i < i+1 < i+2 < i+3 < ... < [missing element] < i-1 < i-2 < i-3 < ... < 2 < 1 < 0
Lưu ý rằng đầu tiên ...
biểu thị vô số số. Điều này có nghĩa là các danh sách sau theo thứ tự tăng dần đối với thứ tự từ điển xoắn:
[3,2,3,4]
[3,2,3,5]
[3,2,3,10]
[3,2,3,1341]
[3,2,3]
[3,2,3,3]
[3,2,3,2]
[3,2,3,1]
[3,2,3,0]
Quy tắc
Bạn có thể cung cấp một chương trình đầy đủ hoặc một chức năng. Số byte thấp nhất sẽ thắng và các sơ hở tiêu chuẩn không được phép.
Các trường hợp thử nghiệm
Output 1:
[0] []
[] [1]
[] [1,2,1,2]
[2,1] [1,1]
[0,1,2] [0,2,1]
[3,0] [3,1]
[3,1] [3]
[2] [2,2]
[2] [2,23]
[2,24] [2,23]
[2,1] [2,23]
Output 0:
[] []
[0] [0]
[1,1] [1,1]
[2,1,2] [2,1,2]
Output -1:
[1,2,1,1,2] [1,2,1,1,1]
[1,2,1,1,5] [1,2,1,1,4]
[1,2,1,1,5] [1,2,1,1]
[1,2,1] [1,2,1,1]
[1,2,1,1,5] [1,2,1,1,6]
[1,2,1,1,6] [1,2,1,1,7]