Quantum Circuits

Xem PDF



Tác giả:
Dạng bài
Điểm: 2100 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

\(N\) bóng đèn được nối với nhau thành một cây gồm \(N\) đỉnh, gốc cây là đỉnh \(1\). Mỗi bóng đèn \(i\) có điện trở \(R_i\). Ban đầu, tất cả các bóng đèn đều đang bật và hệ thống ở phiên bản \(0\). Mỗi phiên bản lưu lại trạng thái độc lập của toàn bộ hệ thống. Các phiên bản được đánh số từ \(0\) theo thứ tự được tạo ra. Với một phiên bản bất kỳ, gọi

\[ S=\sum_{\text{bóng đang bật }i}R_i \]

là tổng điện trở của tất cả các bóng đang bật. Nguồn điện có hiệu điện thế không đổi \(U\). Khi đó dòng điện chạy trong mạch là

\[ I=\frac{U}{S}. \]

Công suất của bóng đèn \(i\) nếu bóng đang bật là

\[ P_i=I^2R_i. \]

Bóng đang tắt có công suất bằng \(0\) và không đóng góp vào \(S\). Điện trở của bóng đèn vẫn được giữ nguyên khi bóng bị tắt. Nếu bóng được bật lại, nó sử dụng điện trở hiện tại của mình.

Các thao tác

\(Q\) truy vấn thuộc một trong ba loại.

Loại 1: 1 k v x

Tạo một phiên bản mới từ phiên bản \(k\). Chỉ thay đổi điện trở của bóng \(v\):

\[ R_v\leftarrow R_v+x. \]

Các bóng khác và trạng thái bật/tắt được giữ nguyên. Đảm bảo sau khi cập nhật \(R_v\ge1\).

Loại 2: 2 k v

Tạo một phiên bản mới từ phiên bản \(k\) và đảo trạng thái của bóng \(v\): nếu \(v\) đang bật thì tắt, nếu \(v\) đang tắt thì bật. Điện trở của bóng \(v\) không thay đổi. Đảm bảo sau thao tác vẫn có ít nhất một bóng đang bật.

Loại 3: 3 k u v

Xét hệ thống ở phiên bản \(k\). Gọi \(P\) là tổng công suất của tất cả các bóng đang bật nằm trên đường đi đơn từ \(u\) đến \(v\). Nếu

\[ W=\sum_{\substack{i\in path(u,v)\\i\text{ đang bật}}}R_i \]

thì

\[ P=I^2W=\frac{U^2W}{S^2}. \]

Hãy in \(P\) dưới dạng phân số tối giản \(\frac{a}{b}\), trong đó \(a,b\) là hai số nguyên, \(a\ge0\), \(b>0\)\(\gcd(a,b)=1\). Nếu \(P=0\), phải in 0 1. Truy vấn loại \(3\) không tạo phiên bản mới.

Input

  • Dòng đầu tiên chứa ba số nguyên \(N,U,Q\).
  • Dòng thứ hai chứa \(N\) số nguyên \(R_1,R_2,\ldots,R_N\).
  • \(N-1\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(u,v\), biểu diễn một cạnh của cây.
  • \(Q\) dòng tiếp theo chứa một truy vấn.

Phiên bản ban đầu có số hiệu \(0\). Mỗi truy vấn loại \(1\) hoặc loại \(2\) tạo ra đúng một phiên bản mới. Nếu đây là phiên bản mới thứ \(j\) được tạo ra thì nó có số hiệu \(j\). Với mọi truy vấn, phiên bản \(k\) phải là một phiên bản đã tồn tại.

Constraints

  • \(1\le N,Q\le10^5\)
  • \(1\le U\le10^9\)
  • \(1\le R_i\le10^9\)
  • \(|x|\le10^9\)
  • \(1\le u,v\le N\)

Đảm bảo sau mỗi thao tác loại \(1\): \(R_v\ge1\). Đảm bảo trong mọi phiên bản có ít nhất một bóng đang bật.

Output

Với mỗi truy vấn loại \(3\), in ra một dòng gồm hai số nguyên \(a,b\), biểu diễn giá trị \(P=\frac{a}{b}\) dưới dạng phân số tối giản. Nếu \(P=0\), in 0 1.

Example

Test 1

Input
5 10 7
2 3 4 5 6
1 2
1 3
3 4
3 5
3 0 1 3
1 0 3 2
3 1 1 3
2 1 3
3 2 1 3
1 2 4 -1
3 3 3 4
Output
3 2
200 121
25 32
16 9
Note

Ở phiên bản \(0\), tất cả các bóng đều bật, nên \(S=2+3+4+5+6=20\). Đường đi từ \(1\) đến \(3\) gồm bóng \(1\)\(3\), nên \(W=2+4=6\). Do \(U=10\):

\[ P=\frac{10^2\cdot6}{20^2} =\frac{600}{400} =\frac32. \]

Truy vấn 1 0 3 2 tạo phiên bản \(1\), khi đó \(R_3=6\). Ta có \(S=2+3+6+5+6=22\)\(W=2+6=8\). Do đó:

\[ P=\frac{10^2\cdot8}{22^2} =\frac{200}{121}. \]

Truy vấn 2 1 3 tạo phiên bản \(2\) bằng cách tắt bóng \(3\). Khi đó \(S=2+3+5+6=16\), \(W=2\), nên:

\[ P=\frac{10^2\cdot2}{16^2} =\frac{25}{32}. \]

Cuối cùng, truy vấn 1 2 4 -1 tạo phiên bản \(3\), làm \(R_4=4\). Bóng \(3\) vẫn đang tắt nên \(S=2+3+4+6=15\). Trên đường đi từ \(3\) đến \(4\), bóng \(3\) tắt nên chỉ bóng \(4\) đóng góp, do đó \(W=4\). Vì vậy:

\[ P=\frac{10^2\cdot4}{15^2} =\frac{16}{9}. \]

Scoring

  • Subtask 1 (20 points): \(N,Q\le1000\); chỉ có truy vấn loại \(3\) (phiên bản \(k\) luôn bằng \(0\)).
  • Subtask 2 (80 points): \(N,Q\le10^5\); không có điều kiện gì thêm.

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.