Các điểm chuyển động

Đề bài

Mô tả

Trên trục số OXn điểm. Điểm thứ i ban đầu nằm ở tọa độ nguyên xi và chuyển động đều với vận tốc vi. Không có hai điểm nào ban đầu cùng tọa độ. Tại thời điểm t (có thể không nguyên, có thể âm hoặc dương), tọa độ điểm thứ ixi+t·vi.

Với hai điểm ij, định nghĩa d(i,j) là khoảng cách nhỏ nhất giữa hai điểm tại bất kỳ thời điểm nào (bao gồm cả thời điểm không nguyên). Nếu hai điểm trùng nhau tại một thời điểm nào đó thì d(i,j)=0.

Hãy tính: 1i<jnd(i,j)

Dữ liệu vào

  • Dòng đầu chứa số nguyên n — số điểm.
  • Dòng thứ hai chứa n số nguyên x1,x2,,xn — tọa độ ban đầu (các giá trị đôi một khác nhau).
  • Dòng thứ ba chứa n số nguyên v1,v2,,vn — vận tốc.

Dữ liệu ra

Một số nguyên duy nhất — tổng cần tính.

Ràng buộc

  • 2n2·105
  • 1xi108
  • 108vi108
  • Các xi đôi một khác nhau.

Ví dụ

Input Output Giải thích
3
1 3 2
-100 2 3
3 Điểm 1 đi rất nhanh sang trái nên không bao giờ gặp lại điểm 2 hay 3; chỉ giữ khoảng cách ban đầu. Điểm 2 và 3 cuối cùng sẽ gặp nhau (điểm 3 đuổi kịp). Tổng d=2+1+0=3.
2
2 1
-3 0
0 Điểm 1 (ở x=2, v=3) đi sang trái và sẽ vượt qua điểm 2 (ở x=1, v=0), nên d(1,2)=0.
5
2 1 4 3 5
2 2 2 3 4
19 Mọi cặp điểm hoặc cùng vận tốc (giữ nguyên khoảng cách) hoặc điểm phía sau chậm hơn (không bao giờ đuổi kịp). Cộng tất cả khoảng cách ban đầu được 19.

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