Sắp Xếp Ngủ

Đề bài

Mô tả

Bessie sắp xếp một mảng bằng cách liên tục tìm phần tử nhỏ nhất, loại bỏ nó, và thêm vào mảng kết quả. Tìm phần tử nhỏ nhất trong đống p số nguyên mất p giây.

Bessie có thể chia các số nguyên giữa mình và các con bò trợ giúp:

  • Bessie xử lý đống của mình bình thường (mỗi lần rút mất thời gian bằng kích thước đống hiện tại).
  • Trợ giúp được giao một số nguyên thì sẽ ngủ đúng bằng giá trị số đó (tính bằng giây), rồi thêm nó vào mảng kết quả khi thức dậy.
  • Nếu Bessie và trợ giúp hoàn thành cùng lúc, phần tử của Bessie được thêm trước.

Hãy tìm thời gian tối thiểu để sắp xếp mảng bằng cách phân chia tối ưu.

Dữ liệu vào

  • Dòng đầu tiên: số nguyên T (1T10) - số test case.
  • Mỗi test case:
    • Dòng 1: số nguyên N (1N2×105).
    • Dòng 2: N số nguyên a1,,aN (1ai1011).
  • Tổng N qua tất cả test case 2×105.

Dữ liệu ra

Với mỗi test case, in thời gian tối thiểu.

Ràng buộc

  • 1T10
  • 1N2×105
  • 1ai1011

Ví dụ

Input Output Giải thích
4
5
1 2 4 5 100000000000
5
17 53 4 33 44
4
3 5 5 5
6
2 5 100 1 4 5
6
15
5
6
Test 1: Bessie lấy {4,5,100000000000}, trợ giúp lấy {1,2}. Bessie xong sau 3+2+1=6 giây.

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