{"trustable":true,"prependHtml":"\u003cstyle type\u003d\"text/css\"\u003e\n section pre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333;\n background: rgba(255, 255, 255, 0.5);\n border: 1px solid #ccc;\n border-radius: 6px;\n }\n\u003c/style\u003e\n\u003cscript\u003e\n window.katexOptions \u003d {\n delimiters: [\n {left: \u0027\\\\(\u0027, right: \u0027\\\\)\u0027, display: false},\n {left: \u0027\\\\[\u0027, right: \u0027\\\\]\u0027, display: true}\n ]\n };\n\u003c/script\u003e\n","sections":[{"title":"Bài toán","value":{"format":"HTML","content":"\u003csection\u003e\r\n\u003cp\u003eChúng ta có một cây có trọng số với \u003cvar\u003e\\(N\\)\u003c/var\u003e đỉnh. Cạnh thứ \u003cvar\u003e\\(i\\)\u003c/var\u003e nối Đỉnh \u003cvar\u003e\\(u_i\\)\u003c/var\u003e và Đỉnh \u003cvar\u003e\\(v_i\\)\u003c/var\u003e hai chiều và có trọng số là \u003cvar\u003e\\(w_i\\)\u003c/var\u003e.\u003c/p\u003e\r\n\u003cp\u003eĐối với một cặp đỉnh \u003cvar\u003e\\((x,y)\\)\u003c/var\u003e, hãy định nghĩa \u003cvar\u003e\\(\\text{dist}(x,y)\\)\u003c/var\u003e như sau:\u003c/p\u003e\r\n\u003cul\u003e\r\n\u003cli\u003ePhép \u003cstrong\u003eXOR\u003c/strong\u003e của trọng số của các cạnh trên đường đi ngắn nhất từ \u003cvar\u003e\\(x\\)\u003c/var\u003e đến \u003cvar\u003e\\(y\\)\u003c/var\u003e.\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003cp\u003eTìm \u003cvar\u003e\\(\\text{dist}(i,j)\\)\u003c/var\u003e cho mọi cặp \u003cvar\u003e\\((i,j)\\)\u003c/var\u003e sao cho \u003cvar\u003e\\(1 \\leq i \\lt j \\leq N\\)\u003c/var\u003e, và in tổng của những giá trị đó theo modulo \u003cvar\u003e\\((10^9+7)\\)\u003c/var\u003e.\u003c/p\u003e\r\n\u003cdetails\u003e\r\n\u003csummary\u003e\u003cvar\u003e\\(\\text{ XOR }\\)\u003c/var\u003e là gì?\u003c/summary\u003e\r\n\u003cp\u003e\r\nPhép \u003cvar\u003e\\(\\mathrm{XOR}\\)\u003c/var\u003e bit của các số nguyên \u003cvar\u003e\\(A\\)\u003c/var\u003e và \u003cvar\u003e\\(B\\)\u003c/var\u003e, \u003cvar\u003e\\(A\\ \\mathrm{XOR}\\ B\\)\u003c/var\u003e, được định nghĩa như sau:\r\n\u003c/p\u003e\u003cul\u003e\r\n\u003cli\u003eKhi \u003cvar\u003e\\(A\\ \\mathrm{XOR}\\ B\\)\u003c/var\u003e được viết dưới dạng cơ số hai, chữ số ở vị trí thứ \u003cvar\u003e\\(2^k\\)\u003c/var\u003e (\u003cvar\u003e\\(k \\geq 0\\)\u003c/var\u003e) là \u003cvar\u003e\\(1\\)\u003c/var\u003e nếu chính xác một trong \u003cvar\u003e\\(A\\)\u003c/var\u003e và \u003cvar\u003e\\(B\\)\u003c/var\u003e là \u003cvar\u003e\\(1\\)\u003c/var\u003e, và ngược lại là \u003cvar\u003e\\(0\\)\u003c/var\u003e.\u003c/li\u003e\r\n\u003c/ul\u003e\r\nVí dụ, chúng ta có \u003cvar\u003e\\(3\\ \\mathrm{XOR}\\ 5 \u003d 6\\)\u003c/var\u003e (dưới dạng cơ số hai: \u003cvar\u003e\\(011\\ \\mathrm{XOR}\\ 101 \u003d 110\\)\u003c/var\u003e).\r\n\u003cp\u003e\u003c/p\u003e\r\n\u003c/details\u003e\r\n\r\n\u003c/section\u003e"}},{"title":"Ràng buộc","value":{"format":"HTML","content":"\u003csection\u003e\r\n\u003cul\u003e\r\n\u003cli\u003e\u003cvar\u003e\\(2 \\leq N \\leq 2 \\times 10^5\\)\u003c/var\u003e\u003c/li\u003e\r\n\u003cli\u003e\u003cvar\u003e\\(1 \\leq u_i \\lt v_i \\leq N\\)\u003c/var\u003e\u003c/li\u003e\r\n\u003cli\u003e\u003cvar\u003e\\(0 \\leq w_i \\lt 2^{60}\\)\u003c/var\u003e\u003c/li\u003e\r\n\u003cli\u003eĐồ thị cho trước là một cây.\u003c/li\u003e\r\n\u003cli\u003eTất cả các giá trị trong input là số nguyên.\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003c/section\u003e"}},{"title":"Nhập","value":{"format":"HTML","content":"\u003csection\u003e\r\n\u003cp\u003eInput được cung cấp từ Standard Input theo định dạng sau:\u003c/p\u003e\r\n\u003cpre\u003e\u003cvar\u003e\\(N\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(u_1\\)\u003c/var\u003e \u003cvar\u003e\\(v_1\\)\u003c/var\u003e \u003cvar\u003e\\(w_1\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(u_2\\)\u003c/var\u003e \u003cvar\u003e\\(v_2\\)\u003c/var\u003e \u003cvar\u003e\\(w_2\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(\\vdots\\)\u003c/var\u003e\r\n\u003cvar\u003e\\(u_{N-1}\\)\u003c/var\u003e \u003cvar\u003e\\(v_{N-1}\\)\u003c/var\u003e \u003cvar\u003e\\(w_{N-1}\\)\u003c/var\u003e\r\n\u003c/pre\u003e\r\n\u003c/section\u003e"}},{"title":"Xuất","value":{"format":"HTML","content":"\u003csection\u003e\r\n\u003cp\u003eIn tổng của \u003cvar\u003e\\(\\text{dist}(i,j)\\)\u003c/var\u003e, theo modulo \u003cvar\u003e\\((10^9+7)\\)\u003c/var\u003e.\u003c/p\u003e\r\n\u003c/section\u003e"}},{"title":"Ví dụ 1","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e3\r\n1 2 1\r\n1 3 3\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e6\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\r\n\u003csection\u003e\r\n\r\n\u003c/section\u003e\r\n\r\n\u003csection\u003e\r\n\r\n\u003cp\u003eChúng ta có \u003cvar\u003e\\(\\text{dist}(1,2)\u003d1,\\)\u003c/var\u003e \u003cvar\u003e\\(\\text{dist}(1,3)\u003d3,\\)\u003c/var\u003e và \u003cvar\u003e\\(\\text{dist}(2,3)\u003d2\\)\u003c/var\u003e, cho tổng của \u003cvar\u003e\\(6\\)\u003c/var\u003e.\u003c/p\u003e\r\n\u003c/section\u003e"}},{"title":"Ví dụ 2","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e5\r\n3 5 2\r\n2 3 2\r\n1 5 1\r\n4 5 13\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e62\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\r\n\u003csection\u003e\r\n\r\n\u003c/section\u003e\r\n\r\n\u003csection\u003e\r\n\r\n\u003c/section\u003e"}},{"title":"Ví dụ 3","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e10\r\n5 7 459221860242673109\r\n6 8 248001948488076933\r\n3 5 371922579800289138\r\n2 5 773108338386747788\r\n6 10 181747352791505823\r\n1 3 803225386673329326\r\n7 8 139939802736535485\r\n9 10 657980865814127926\r\n2 4 146378247587539124\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e241240228\r\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\r\n\u003csection\u003e\r\n\r\n\u003c/section\u003e\r\n\r\n\u003csection\u003e\r\n\r\n\u003cp\u003eIn tổng theo modulo \u003cvar\u003e\\((10^9+7)\\)\u003c/var\u003e.\u003c/p\u003e\u003c/section\u003e"}}]}