Allison có rất nhiều thiết bị điện tử như iMac, iPod, iPhone và iPad. Vì vậy, cô định mua các ổ cắm kéo dài để sạc chúng. Sau nhiều lần tìm hiểu trên mạng, Allison phát hiện một mẫu ổ cắm mang nhãn hiệu 天翼 vừa đẹp vừa tinh xảo (như hình bên trái phía dưới). Ngay từ cái nhìn đầu tiên, cô đã bị kiểu dáng đẹp mắt của nó thu hút và mua một lúc $n$ ổ cắm cùng mẫu này.


Nhưng vấn đề cũng xuất hiện: nhà Allison chỉ có một ổ điện trên tường, nên cô phải nối các ổ cắm kéo dài để dẫn điện qua từng tầng (như hình bên phải phía trên).
Các ổ cắm được nối thành cấu trúc cây: phích cắm của mỗi ổ được cắm vào một ổ khác (trừ nút gốc), và không được tạo thành chu trình.
Mỗi ổ cắm có ba dây: dây pha, dây trung tính và dây tiếp đất. Khi số ổ cắm tăng lên và dây dẫn bị hao mòn, điện trở do tiếp xúc giữa các dây trong mạch đã trở nên đáng kể.
Làm thế nào để mô tả cấu trúc cây của các ổ cắm và quan hệ điện trở giữa các dây? Allison nghĩ ra một mô hình toán học: dùng $a_i$ làm số hiệu của ổ cắm thứ $i$, $f_i$ là ổ mà phích cắm của ổ thứ $i$ được cắm vào (tức cha của $a_i$ trên cây); $1$ là dây pha, $2$ là dây trung tính, $3$ là dây tiếp đất. Điện trở của mạch được mô tả bằng $R(a_i,f_i,x,y)$ ($x,y\in\{1,2,3\}$), là điện trở giữa dây $x$ của $a_i$ và dây $y$ của $f_i$. Trong mô hình này, Allison cho rằng dây pha và dây trung tính cũng có thể được nối với nhau và tạo ra điện trở. Dưới đây là một ví dụ:

Theo thời gian, điện trở giữa các dây cũng có thể thay đổi. Allison muốn biết điện trở hiện tại giữa dây $x$ của ổ cắm $a_i$ và dây $y$ của ổ cắm $a_j$ trong mạch dạng cây này. Quy ước nút gốc không cắm vào ổ cắm nào khác và có số hiệu $1$.
Dữ liệu vào
Dòng đầu tiên của tệp circuit.in chứa số nguyên dương $n$, là số ổ cắm.
Tiếp theo là $4(n-1)$ dòng, cứ bốn dòng tạo thành một khối.
Dòng đầu tiên của khối thứ $i$ chứa số nguyên $f_i$, cho biết cha của ổ cắm số $i+1$ là ổ cắm $f_i$.
Sau đó là ma trận $g_{xy}$ kích thước $3\times3$. Phần tử ở dòng $x$, cột $y$ là nghịch đảo của điện trở giữa dây $x$ của ổ cắm số $i+1$ và dây $y$ của $f_i$.
Tiếp theo là số nguyên $q$, cho biết có $q$ thao tác.
Tiếp theo là $q$ dòng, mỗi dòng chứa một số số nguyên.
Số nguyên đầu tiên là $k$. Nếu $k=1$, tiếp theo có bốn số nguyên $a_i,x_i,x_j,g$, nghĩa là đổi điện trở giữa dây $x_i$ của ổ cắm $a_i$ và dây $x_j$ của cha $f_i$ của nó thành nghịch đảo của $g$. Bảo đảm $2\le a_i\le n$.
Nếu $k=2$, tiếp theo có bốn số nguyên $a_i,x_i,a_j,x_j$, yêu cầu hỏi điện trở giữa dây $x_i$ của ổ cắm $a_i$ và dây $x_j$ của ổ cắm $a_j$. Bảo đảm $a_i\ne a_j$.
Dữ liệu ra
Tệp dữ liệu ra là circuit.out.
Với mỗi truy vấn, in một dòng chứa số thực biểu diễn điện trở giữa hai dây.
Nếu $\left|\frac{\text{kết quả của thí sinh}-\text{kết quả chuẩn}}{\text{kết quả chuẩn}}\right|<10^{-3}$ thì giá trị điện trở được coi là đúng. Nếu mọi giá trị điện trở đều đúng, bạn nhận được điểm của bộ kiểm thử đó.
Ví dụ
Dữ liệu vào 1
3 1 6 7 1 4 1 8 8 3 3 2 7 5 8 10 5 7 10 5 5 10 1 3 1 2 2 1 2 2 3 5 2 3 2 2 2 1 2 3 2 5 1 3 1 2 3 2 1 2 2 3 1 3 2 1 2 2 2 1 1 1 1 2 1 2 5 2 3 1 1 2
Dữ liệu ra 1
0.083836 0.095256 0.078828 0.146900
Ví dụ 2
Xem các tệp circuit/circuit.in và circuit/circuit.ans trong thư mục của thí sinh.
Giới hạn
Với tất cả dữ liệu kiểm thử, đầu vào được bảo đảm là một cây. Nghịch đảo của mọi điện trở trong đầu vào lớn hơn $0$ và không vượt quá $10$.
| Số hiệu bộ kiểm thử | Đặc điểm |
|---|---|
| $1$–$6$ | $n\le100,q\le1000$; chỉ có truy vấn, không có cập nhật |
| $7$–$10$ | $n\le1000,q\le1000$; dữ liệu là một đường đi |
| $11$–$16$ | $n\le10000,q\le10000$; chiều cao cây không vượt quá $30$ |
| $17$–$20$ | $n\le10000,q\le10000$ |