Nông Trại Của FJ

Đề bài

Mô tả

Nông dân John trồng N cây với chiều cao ban đầu h1,h2,,hN và tốc độ tăng trưởng hàng ngày a1,a2,,aN. Sau d ngày, chiều cao của cây thứ ihi+d·ai.

Nông dân John muốn mỗi cây i có đúng ti cây khác cao hơn nó (tức là cây i đứng ở vị trí ti+1 khi sắp xếp chiều cao giảm dần, các ti phân biệt đôi một). Hãy tìm số ngày tối thiểu cần thiết để đạt được cấu hình này, hoặc xác định nếu không thể.

Lưu ý: Tại thời điểm đó, không có hai cây nào có cùng chi���u cao.

Dữ liệu vào

  • Dòng 1: Số nguyên T (1T10) — số bộ test.
  • Với mỗi bộ test:
    • Dòng 1: Số nguyên N (1N2·105).
    • Dòng 2: N số nguyên h1,,hN (1hi109).
    • Dòng 3: N số nguyên a1,,aN (1ai109).
    • Dòng 4: N số nguyên phân biệt t1,,tN (0tiN1).

Dữ liệu ra

In ra T dòng, mỗi dòng là số ngày tối thiểu cần thiết, hoặc 1 nếu không thể.

Ràng buộc

  • Tổng N qua tất cả các bộ test 2·105.
  • Cần sử dụng kiểu dữ liệu 64-bit.
  • Test 3: N2.
  • Các test 4-5: N50.
  • Các test 6-8: N103.
  • Các test 9-13: Không có ràng buộc thêm.

Ví dụ

Input Output Giải thích
6
1
10
1
0
2
7 3
8 10
1 0
2
3 6
10 8
0 1
2
7 3
8 9
1 0
2
7 7
8 8
0 1
2
7 3
8 8
1 0
0
3
2
5
-1
-1
6 bộ test. Bộ 1 (N=1): chỉ 1 cây, t=0 luôn thỏa. Bộ 5 (h=[7,7],a=[8,8],t=[0,1]): hai cây cùng chiều cao và tốc độ nên không bao giờ phân biệt được, kết quả 1.

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