trang chủ / bài tập / childzoo

Vườn Thú Của Bé

Đề bài

Mô tả

Một vườn thú có n khu, đánh số từ 1 đến n. Khu thứ i chứa ai con thú. Có m con đường, mỗi con đường nối hai khu khác nhau. Vườn thú liên thông: từ một khu bất kỳ luôn đi được tới mọi khu khác qua các con đường.

Với hai khu pq (pq), xét mọi đường đi đơn từ p đến q. Với mỗi đường đi, ghi lại số nhỏ nhất trong số lượng thú của các khu nằm trên đường đi đó. Gọi f(p,q)giá trị lớn nhất trong các số đã ghi (tức là giá trị lớn nhất có thể của "khu ít thú nhất trên đường đi", lấy trên tất cả các đường đi từ p tới q).

Hãy tính giá trị trung bình của f(p,q) trên tất cả các cặp có thứ tự (p,q) với pq. Có tất cả n(n1) cặp như vậy.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nm.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.
  • m dòng tiếp theo, mỗi dòng chứa hai số nguyên xiyi, mô tả con đường nối khu xi và khu yi.

Các con đường là hai chiều, mỗi cặp khu được nối bởi tối đa một con đường.

Dữ liệu ra

Ghi ra một số thực: giá trị trung bình cần tìm. Đáp án được chấp nhận nếu sai số tương đối hoặc tuyệt đối không vượt quá 104.

Ràng buộc

  • 2n105
  • 0m105
  • 0ai105
  • 1xi,yin, xiyi

Ví dụ

Input Output Giải thích
4 3
10 20 30 40
1 3
2 3
4 3
16.6666666667 Chẳng hạn f(1,3)=10, f(2,3)=20, f(4,3)=30, f(2,4)=20. Tính trên cả 12 cặp có thứ tự, trung bình là 16.6667.
3 3
10 20 30
1 2
2 3
3 1
13.3333333333 Đồ thị là một tam giác. f(1,2)=10, f(2,3)=20, f(1,3)=10 (và các cặp đối xứng).
7 8
40 20 10 30 20 50 40
1 2
2 3
3 4
4 5
5 6
6 7
1 4
5 7
18.5714285714 Trung bình f(p,q) trên toàn bộ 42 cặp có thứ 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